On the 12th march of 2014, I held a presentation at TechHub Bucharest called "Responsive Websites - how to build a websites for all devices". This was a part of the Avangate Tech Sessions series.

Because RWD (Responsive Web Design) is a term that is often misunderstood or simply treated as a shortcut for CSS3 media queries, I thought it was a good opportunity to show how to practically build a responsive website with all the technology stack involved.

The presentation is in Romanian and requires HTML, CSS and JavaScript skills and ocasionally some PHP code is thrown for the sake of the examples.

My agenda was composed of a short introduction to the technologies used, live coding a responsive website from scratch, then using Twitter Bootstrap, then using Zurb Foundation. I wrapped it up with mobile/feature detection and content strategy techniques.

One of the main reasons to watch this presentation is the prototyping of the website on paper (whiteboard) and then coding it from 0. I encourage web developers to develop a responsive website (fluid website) from scratch to see how the CSS is organized to better manage media queries rules. There are other things that get overlooked like splitting your content and code into modules, blocks or some kind of entity so you don’t have to repeat code over and over again.

I also touched on some of the important aspects of the grid, which in my opinion is the most important part of the website’s prototype. As a developer coming from the server-side part of the things, I considered a fluid grid to be something more or less voodoo. I hope I demystified some of the aspects of that in this presentation.

rwd responsive webdesign responsive websites techhub bucuresti html5 css3

If you’re having problems installing  Apache 2.4.x with PHP 5.5.x on Windows then here is a resolution.
I did everything by the book, took the binaries php-5.5.16RC1-Win32-VC11-x86.zip and httpd-2.2.25-win32-x86-no_ssl.msi and tried to upgrade my portable webserver installation.
After making sure the paths in php.ini are ok, I kept getting this wierd error:
httpd.exe: Syntax error on line 496 of D:/webserver/bin/apache/conf/httpd.conf:
Cannot load d:/webserver/bin/php/php5apache2_4.dll into server: The specified procedure could not be found.
The file php5apache2_4.dll was there! I knew from my previous efforts that this has something to do with some incompatibilities of the latest versions of both Apache and PHP on Windows.
The solution is to go to http://www.apachelounge.com/download/ and download http://www.apachelounge.com/download/VC11/binaries/httpd-2.4.10-win32-VC11.zip and manually install/copy the server.
The .msi package that Apache provides never worked for me, especially because I want to keep my webserver as portable as possible and not run Apache as a Windows service.

If you’re having problems installing  Apache 2.4.x with PHP 5.5.x on Windows then here is a resolution.

I did everything by the book, took the binaries php-5.5.16RC1-Win32-VC11-x86.zip and httpd-2.2.25-win32-x86-no_ssl.msi and tried to upgrade my portable webserver installation.

After making sure the paths in php.ini are ok, I kept getting this wierd error:

httpd.exe: Syntax error on line 496 of D:/webserver/bin/apache/conf/httpd.conf:
Cannot load d:/webserver/bin/php/php5apache2_4.dll into server: The specified procedure could not be found.

The file php5apache2_4.dll was there! I knew from my previous efforts that this has something to do with some incompatibilities of the latest versions of both Apache and PHP on Windows.

The solution is to go to http://www.apachelounge.com/download/ and download http://www.apachelounge.com/download/VC11/binaries/httpd-2.4.10-win32-VC11.zip and manually install/copy the server.

The .msi package that Apache provides never worked for me, especially because I want to keep my webserver as portable as possible and not run Apache as a Windows service.

apache http php windows

On the 29th of October 2013 my employer (Avangate) sponsored a presentation that I held at TechHub Bucuresti about HTML5. I called it “HTML5 - from faster websites to multiplayer games" because I wanted to summarize the topics I was about the explore.

The whole presentation is in Romanian and the attendance was good for the location, I think there were 80 people out of the 120+ registered.

For the ones that didn’t fell asleep (it was a 3 hours marathon, edited to 2 hours), I was able to explain the new HTML5 tags and attributes and some of their implication in the website optimization and marketing.

Then I touched on the majority of the JavaScript APIs that HTML5 is made of, at least the ones I was aware and had an example prepared especially for the event. You can grab the source code examples and presentation from https://github.com/serbanghita/HTML5-presentation (the presentation is in Romanian).

At the end of the presentation I explained some practical examples of how to use HTML5’s new features by showcasing: a web-based chess application, a shopping cart made with jQuery Mobile, a tablet web app made also with jQuery Mobile, little insight in the code of Cut-The-Rope the HTML5 edition and finally a small demo of a multiplayer web-based game made for both mobile and classic devices which used WebSockets and Canvas 2D.

It’s important to mention that if you want to understand some of the concepts that circulate over the Internet these days like Progressive enhancement, Mobile first, Polyfills, Milestones / Legacy, Browser compatibility - go to the 16th slide of the presentation or watch the video as I explain the concepts. The single reason why those terms are important to understand is because it can give you a direction from the start, when you are developing a web application, and can also be used as keywords when pitching for your solution.

html5 techhub romania programming webdevelopment bucuresti