tsubik@gmail.com
Tomasz Subik
Full Stack Developer

Make your Ember.js web app more progressive - part 3: Offline data

There are times when you have a limited access to the network, whether you are on a trip around the world not willing to spend lavishly on roaming services, or on a train with internet connection breaking all the time. This is the third part of the series how to make your application accessible in those moments. The previous part was about caching application assets, so you don’t need a network access to run an application consecutive time. Today, another important aspect, so without further ado, please enjoy, guide how to keep your data offline.

Read more...

Make your Ember.js web app more progressive - part 1

Anyone who follows the latest trends in front-end technologies probably came across the term “Progressive Web Apps”. It’s not a new concept, but the latest Google I/O conference shed new light on it and gather some extra technologies and libraries which could help you to make apps more “progressive”. I want to show you how with a little effort you could start applying those concepts. This is the first part of the series in which I will present you some enhancements you could pick up.

Read more...

Setup ESLint for your Ember project

I haven’t posted anything for months, and I want to change that soon. But, as my time is limited recently I want to start small. Just a quick tip for today. I have been struggling with some obstacles when switching from jshint to eslint in my Ember projects, whether due to updated Ember library, cli, or some other not so well documented changes. However, now it seems to be a really easy job to do.

Read more...

Emacs for a Sublime Text user

A few weeks ago I decided to switch most of my development work to Emacs. Let me say it upfront, I don’t want to take a part in any “holy war” around which text editor is best or whatever. I just want to share my experience here, how did that switch look like from the standpoint of ‘typical’ Sublime Text user.

Read more...

Retain old family photos using Node.js and ImageMagick

Last weekend I decided to push forward an idea which had wrapped around my mind for a long long time. My family (I guess as almost everyone’s) has a lot of photos, notes, documents, etc. A lot of memories, packed into albums, envelopes, frames or hidden somewhere between books on the bookshelf. Pictures fade or simply lose quality over time. That’s why I decided to scan them, but as there are a lot of them I wanted to automate the process as much as I can.

Read more...

Setting up Circle CI for Cordova plugin

Recently, I have been struggling with setting up some continuous development servers for my cordova-plugin-geofence. I had been already using Travis to kick off tests in iOS environment for some time, but android also had been screaming for attention long enough. I decided to go for Circle CI as my android tests savior. Anyway, not everything went so smooth, that’s why I’ve felt compelled to share my solution with you guys.

Read more...

Ionic geofence example application

For some month or two I left the .NET world and spent more time exploring new horizons, especially mobile development stuff. I had an idea of mobile application and now have time to make it come true. After initial research I decided to build a hybrid application which means the whole thing runs inside WebView component on the device. That approach allows me to use javascript with angularjs. The last thing I needed was some CSS/JS framework to manage visual layer and friend of my came with help suggesting to look at ionic.

Read more...

Visual Studio database project migrations

Visual Studio Database project is a good way to quickly get your database under source control. You will find it very useful especially if your system has a large database schema with a huge pile of stored procedures, functions, views or other database centric stuff. Unfortunately, the deployment strategy brought with it is painful and detached from reality. Automated migration of production database to the latest version is hmmm…. I won’t say impossible. I read about it, but it was like fixing sinking submarine using bare hands. Some people use roundhouse which is a very nice project to manage database migrations using differential scripts. Below you will find pros/cons of using both of these tools.

Read more...

Generate migrations for DB projects - automate Visual Studio with powershell

Recently I was working on providing database migrations solution for a quite large .NET learning management system. It was a shame that there was nothing to automate process of updating production databases and everything must have been done manually. We are using custom ORM solution, VS Database project to keep database schemas in source control and factories to populate databases with static and some test data. Schemas are large - contain hundreds of tables, views and thousand of stored procedures which is why when I was looking for database migrations solution a good maintaining of updating changes in procedures was a must.

Read more...

Sass with ASP.NET MVC 4 - Twitter Bootstrap example

Many times if I look at css stylesheets of middle and big systems it just makes me cry. Total chaos, code repetition, basically too much css. That’s why css preprocessors were invented. In the .NET world the most popular right now is Less. However, for a long time there is another player on the market - Sass.

Read more...

Simple jQueryUI DialogManager

Recently I’ve been working on structuring and refactoring javascript code in a middle size application. There are many modal popups, you know popup invoking popup and so on. Many of them were just created on div elements which already exist in the html markup. I thought that it would be a better idea to create these kinds of div elements only if I want to show a dialog using them. The next thing I’d like to achieve is to use default configuration for created dialogs. Also, I want my div element destroyed after closing the dialog.

Read more...

Keep your files in VS project included. Fast and elegant solution

In the previous article I wrote a simple powershell script to find all of the potentially missing file references from my Visual Studio project files.

I realized, however, that the script has some performance issues. For a large solution, it takes quite a few seconds to get the work done. So, I thought it would be much better to write some kind of library for this job. The fact is, I do not want to write some external tools like desktop application. I want to keep it simple. Simple like… installing the additional modules by nuget. Oh yeah, so just type some fancy command in package manager console and let it be done.

Read more...

Powershell script to bring your publish to the next level

How many times during the development stage did your project file break after merge? Everything looks great until you deploy app on test or production server(sic!). You finish your work, go home and spend nice evening with your girlfriend or friends. But next day, during checking new issues from quality team, you might see something like that:

Powershell_01

Read more...

New personal website released

Finally, I’ve found some time to refresh my personal website. Nothing has changed here for years and the blog was already dead. Even if I liked the old design I have decided to make some definite changes. I found it too darkly and gloomy and with many unnecessary graphics elements which could be swapped with simple text using proper fonts. The next problem was the lack of support for mobile devices, the page was not adapting to a device screen.

Read more...