My first half-marathon finished in 2:04:10

Four months ago I decided that I would give running a half-marathon a try for the first time in my life.

Preparations

Firstly, I spent a few weeks training, which involved workouts at the gym and running on a treadmill. When the spring came I could go outside and enjoy running closer to the nature. It was exactly three months before the target performance. Each week I was doing 3-4 workouts to boost my condition, which included one slower long run and one basketball 1.5 hour training game. One month before my first official half-marathon appearance I was able to run 18 km at a sustained pace. That gave me confidence that I could complete the target distance of 21.095 km.

Continue reading My first half-marathon finished in 2:04:10

New role as a JavaScript Wrangler at Automattic

Today I started my new job at Automattic, the company behind WordPress.com, which serves more than 15.8 billion pages a month. I’m extremely excited that I became a part of 100% distributed team where everyone primarily works from home. I joined over 320 passionate people from all around the world and I will work as a JavaScript Wrangler. By the way, Automattic is always hiring.

Continue reading New role as a JavaScript Wrangler at Automattic

Using JavaScript ES6 in practice

We all know this language as JavaScript, but the official name is ECMAScript. The most recent official Ecma Standard is called ES5 (ECMAScript Language Specification Edition 5.1). It was published in June 2011 by TC39 (Ecma Technical Committee 39) – the committee evolving JavaScript. Focused development of the sixth edition started earlier in 2009, as the fifth edition was still being prepared for publication. It was initially named ES.next, but it’s widely known as ES6. This year new official name was announced ES2015 (The 2015 ECMAScript Language Specification). This is because TC39 plans to publish new version of JavaScript with small set of changes each year from now on. The final ES6 draft was published on April 14, 2015 and spec is frozen now. Formal publication is expected to be done in June 2015. Before that will happen it is already possible to get familiar with unofficial HTML version of the ES6 working draft. However I strongly recommend to check first very concise overview of ECMAScript 6 features. Another excellent resource to start with is ECMAScript 6 new features overview & comparison website that presents ES5 equivalent code next to ES6 code.
Continue reading Using JavaScript ES6 in practice

Programming interview glossary

This blog post explains most of the popular keywords I was asked about during interviews for various software engineering roles. They are presented in an alphabetical order. Personally I find this glossary very useful when preparing for another interview.

Agile Software Development

In 2001 a group of industry experts created statement of values called The Manifesto of the Agile Alliance:

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Continue reading Programming interview glossary

More about helpful Drupal 7 modules and themes

In Drupal to the rescue article I wrote some hints how to setup Drupal 7 instance. Here I will present more useful resources that can be used to extend standard Drupal installation.

More modules I highly recommend:

Continue reading More about helpful Drupal 7 modules and themes

Overview of Javascript tools and frameworks

I prepared overview of possible JavaScript tools and framework that can be used to build modern web application. Most of them are used to build Czas na Rower frontend. Mentioned project uses GruntJS for tasks management, JSHint for code linting Mocha and SinonJS for unit testing, RequireJS for module loading, jQuery, Bootstrap, Flight and Backone.js for JavaScript code development. You can see more on project site on GitHub.

JavaScript tools

Code linting

JSLint is a JavaScript program that looks for problems in JavaScript programs. It is a code quality tool created by Douglas Crockford. JSLint takes a JavaScript source and scans it. If it finds a problem, it returns a message describing the problem and an approximate location within the source. The problem is not necessarily a syntax error, although it often is. JSLint looks at some style conventions as well as structural problems. It does not prove that your program is correct. It just provides another set of eyes to help spot problems.

Continue reading Overview of Javascript tools and frameworks

Introducing jQuery – presentation

This is updated deck from internal training I made at Ciao back in 2009. It covers basic principles and use cases for jQuery library. What is very interesting, I didn’t have to do many modifications to the original presentation as jQuery API is very stable. The biggest change was replacement of event bind method with on implementation. Topics covered in presentation:

  • Using selectors and page traversing
  • Handling events
  • Effects
  • DOM manipulation
  • Mouse interaction and UI extensions

Continue reading Introducing jQuery – presentation