โHead of Frontend Department @ InfinumI'm a Head of Frontend Department at Infinum, spending my time mostly making web, hybrid mobile, and sometimes desktop apps. In my free time, I experiment with Node.js, browser extensions and everything else JavaScript related. I am a firm believer in Atwood's law.
A few months ago, Google Project Zero discovered a bunch of security exploits in iOS versions from 10.0 up to 12.1.3 that cover a total of 1.4 billion devices.
Web is an open place and many people and companies collaborate in moving it forward, but the Google I/O conference is probably the biggest event where a bunch of new features and concepts are introduced.
If you ever made a website, it probably contained some assets like images, CSS and JavaScript. In order for a page to be fast, itโs a good idea to concatenate all your JavaScript assets into one file and all your CSS assets into another. Caching might also be trickyโฆ
If you spend a lot of time surfing the Internet, you are probably annoyed by the strange cookie messages appearing on many web pages. These messages are the result of the EU cookie law, which states that the user of the website must be informed if their actions are tracked with Internet cookies.
Every now and then a technology comes out that changes the web landscape. In 2008, Google announced Google Chrome, a simple but fast and powerful browser. Around the same time, HTML5 started to emerge and gave us access to a lot of new features. Now it's time to embrace another new technology called Web Components.
This Saturday, the second consecutive Webcamp Zagreb tech conference took place. This year, there were around 600 participants from Croatia and the region, and they could choose between 24 presentations.
JSON API is a quite good specification - it gives you a structured way to communicate with the API without any major bikeshedding. However, JSON API is also a complex specification with a lot of small but important details. This is a story about how we went head to head with JSON API and won.
React is a great view layer, but if you want to create something more than a simple TODO app, youโll need some other parts. First of all, youโll need a data structure and a way to handle the changes in it. It is here that the state management libraries come into play. There are plenty of state management libraries out there, like Redux, Flux, and Relay. Iโll talk about why we at Infinum chose MobX, and what weโre doing to make development with it even better.
Lightning talk: Using Webpack with ${backendTechnology}
Webpack is great, but what if you're working with backend technologies like Ruby on Rails? Fear not, because we'll show you how to configure Webpack so it can play nice with other backend technologies.
React is a great view layer, but if you want to create something more than a simple TODO app, youโll need some other parts. First of, youโll need a data structure and a way to handle the changes in it. Although the most simple way to do it could be to take parts of a framework youโre used to (e.g. Backbone Collections/Models), there is something better out there. First, there was the Flux architecture, made by Facebook itself - it forced us to change and consume our data in a certain way in order to prevent developers from shooting themselves in the foot. Then there was Redux - a state container that preaches immutability and time travel. While Redux is great, and enables us great things like hot module reloading, it is also very strict and introduces a lot of boilerplate code. MobX, on the other side, has almost no boilerplate code, can be strict when/if you want it to be, and gives you a nice performance boost for free.
In the recent months and years, we got to play with a lot of new shiny features - provided either by a standards body like ES2015, or by preprocessors like SASS. During that time, we got used to the transpilation step where we would make our โcode of the futureโ work in all the browsers we need to support. But now, new times are upon us: the web platform is becoming evergreen...
Did you ever give the same name to two CSS classes by accident and the whole web page broke? CSS Modules are a new approach that tries to solve this issue. The idea of CSS Modules is that every class is local unless we define it otherwise.
The concept of developing mobile applications in web technologies is great because it will work on multiple operating systems. But there is also the desktop platform, which still plays a significant part, in which you can also develop with web technologies. In this talk, I'll present you what lessons we learned by developing hybrid apps that work on multiple desktop and mobile operating systems. The talk will cover our choice of wrappers and why we're using them instead of the alternatives, what tools and practices were used to build maintainable apps, and automation tools that make our jobs much easier.
With web apps gaining popularity an idea was born to make an web app in an native web view and so the hybrid app was born. While talking about hybrid applications today, people tend to think only of the mobile apps. This talk will instead concentrate on hybrid desktop apps: what wrappers are available, which features they offer and my experience with node-webkit.
DatX is an opinionated data store for use with the MobX state management library. It features support for simple observable property definition, references to other models and first-class TypeScript support.