Software Development
Project Management & Leadership
Royal Caribbean Cruises
Tingstad.se
Tingstad.se is an e-commerce site for Tingstad Papper AB, one of the biggest Business-2-Business wholesalers of everyday commodities and packaging in Europe. Due to the visitors’ frequent purchasing pattern the site contains functionality much like an application, functionality to make the purchasing process as easy as possible for frequenting/all site visitors. Among the features, a customer can find
- Customer-based prices
- The possibility to, in an intuitive and simple way, create and manage lists
- Support for customer-branded and customer-specific products
- Immediate integration with Tingstad’s business system (Jeeves ERP System)
Position: Project Manager/Lead Developer
As the project manager/lead developer, I had to sell the project idea to top management, create the project plan, ensure that the project and the team stayed within time constraints, report progress to top management, organize and manage required consultancy services, manage feature requests from the business side, make final design and layout decisions, and create as well as communicate design and technical specifications to the project team.
Key Technologies
Design, Layout, HTML, CSS, JavaScript, jQuery, jQuery UI, ASP Classic, VBScript, MSSQL, IIS, XML, XLST
You can find Tingstad.se here
Fairshopping.se
Fairshopping.se aims at providing a platform and a community for consumers to send in complaints and feedback to companies all over Sweden. Due to the site’s simplicity and Fairshopping’s commitment to get a response back from the company, including tracking down companies’ customer representatives as a service to the complainers, the site attract over 50,000 unique visitors every month, a large amount considering the mere 9 million living in Sweden.
In 2010 Fairshopping 2.0 was released. Few changes were made to the everyday visitor/complainer and instead focus was put upon the ‘Company Manager’, a new set of features. As the name suggests, the Company Manager aims to help companies to better manage and analyze the complaints and feedback received.
Position: Project Manager/Lead Developer
In addition to handling extensive communication with the customer and other parties involved, such as former technical partners and under-consultants, I was also responsible for the change of technical platform which included a complete re-write of the code, a database move and a change of web host. Most programming work done by me consisted of fixing bugs, enhancing performance, dealing with technically complex features and making sure the result reflected the expectations of the customer.
Key Technologies
HTML, CSS, JavaScript, jQuery, jQuery UI, Flash, ASP Classic, VBScript, PHP, PHP Cake, MySQL, Apache
You can find Fairshopping.se here
Gracias.nu
Gracias.nu is a site complementing the Spanish-teaching book series with the same name. The site includes extra reading and listening material as well as exercises/games which is supposed to make it more fun to learn. The exercises/games features audio and visual content and includes input through both clicking, drawing and writing. The target audience is students in between age 12 and 15, whose schools the book is sold to.
Position: Project Manager/Technically Responsible/Technical Partner
Due to the lack of knowledge and financial resources with the customer I acted as a complete technical partner. This included, among many roles and tasks, being responsible for web hotel, rolling out new versions, advise on technical solutions, balancing desired functionality with cost, but also being responsible for any occurring problems and making sure a technically sound solution was constructed.
Because of the limited financial resources almost all of this project was outsourced to low-cost developers in India and Bulgaria. To make this work it was crucial that clear and detailed specifications were communicated to the external developers and that these specifications really reflected the customer's needs and desires.
Key Technologies
Design, HTML, CSS, JavaScript, jQuery, Flash, Flex, PHP, MySQL
You can find Gracias.nu here
T2BNordic.se
T2B Nordic is a medium-sized Business-2-Business reseller of electronics and electronic systems. In addition, many services such as installation and support is offered. The web plays still a very small part as a sales channel at T2B Nordic but the aim is to turn it into a key channel. The goal is to be able to distribute and manage the customer base more efficiently and to to offer at least the same quality to their customers on the web as by traditional channels, such as the telephone.
A new site was launched to help T2B Nordic achieve these goals. A new clean look was designed and put upon a Content Management System to help make it easy to update news feeds, texts, images, etcetera, without having to worry that the updates would mess up the design. The already existing e-commerce platform were better integrated with the site and got a very much needed touch up, of course aligned with the rest of the site.
Position: Co-Project Manager
I was mainly involved in the initial sales phase, advising on the best fit for the customer, and as an observer, overseeing the project to make sure everything were going according to plan.
Key Technologies
Design, HTML, CSS, JavaScript, jQuery, PHP, Joomla, MySQL
You can find T2BNordic.se here
PlanBBevakning.se
PlanBBevakning.se is a simple but not yet launched presentation website aimed at providing basic information such as a description of services, company history and contact information – the minimum information a customer expects to find online today. PlanB Bevakning is the fastest growing surveillance company in western Sweden and focuses mainly on civil services and store surveillance.
Position: Developer
Mainly involved with interactive parts of the site, including JavaScript and specifically jQuery coding.
Key Technologies
HTML, CSS, JavaScript, jQuery
The website has not yet been launched.
Education
Bachelor of Science
Bachelor of Science in Technology Management and Economics at Chalmers University of Technology. Specialization in Information Technology. Courses taken include:
- Object-Oriented Programming (advanced course), Databases, Algorithms and Data Structure, Programmed Systems, Software Engineering Fundamentals
- Industrial Marketing, Industrial organisations development, Management Information Systems, Logistics, Modeling and Simulation
Find official transcript of records here.
Chalmers University of Technology
Chalmers University of Technology is Sweden's leading and one of Europe's top universities for Engineering and Technology.
Find more information about Chalmers University of Technology here.
Thesis
"A First Look at the Industry of Company-targeted Social Media Tools"
Made in conjunction with a startup-project at Chalmers School of Entrepreneurship, one of Europe's leading entrepreneurship schools. The project aimed at developing a tool for management and monitoring of social media, much like Amazon-owned Radian6.
Find more information about Chalmers School of Entrepreneurship here.
Tingstad Papper
Responsibilities & Goals
E-commerce platform (turnover of about $50,000,000); web strategy, marketing, development and maintenance. Establishing the web as the primary channel in the company. Maintaining leading web presence position in the Scandinavian industry.
Tasks Performed
Initiated the start of a complete reconstruction and consolidation of websites and platforms, including the project management of various internal and external personnel. Launched education program for sales teams.
Achievements
Technology Used
HTML, CSS, JavaScript, jQuery, jQuery UI, ASP Classic, VBScript, MSSQL, IIS 6 & 7, XML, XLST, Google Analytics, Jeeves ERP System, Subversion, Adobe Photoshop
You can find more information about Tingstad and their e-commerce website here
Royal Caribbean Cruises Ltd.
Responsibilities & Goals
Maintenance and restructuring of intranet platform. Performance reporting.
Tasks Performed
Administered and evaluated what information to add and remove from the intranet. Participated in rollout of a new balanced scorecard platform. This included traveling with the fleet for 3 months, presenting and discussing the balanced scorecard and bonus program with each ship’s top management.
Achievements
Software Used
Oracle Hyperion Performance Scorecard, Oracle Essbase, Microsoft Excel, Microsoft PowerPoint, Microsoft Word, Microsoft Visio, Microsoft Access
You can find more information about Royal Caribbean Cruises here (homepage) and here (brief facts)
Citro Webbdesign
Responsibilities & Goals
Start up and manage a web bureau which provides the owners with well-paid and rewarding work while attending college.
Tasks Performed
Sales. Management of several projects (10+) for several clients (5+). Development. Management of outsourcing. Accountancy.
Achievements
Technology Used
HTML, CSS, JavaScript, jQuery, jQuery UI, Flash, PHP, CakePHP, ASP Classic, VBScript, MySQL, MSSQL, Apache Web Server, IIS, XML, XLST, Google Analytics, Subversion, Adobe Photoshop, Adobe Illustrator
You can find more information about Citro Webbdesign here
Chalmers Technology Consultants
Responsibilities & Goals
Head of Recruitment; 50+ employees/year to 6 different business divisions. Sales, ongoing IT projects, development of the IT business unit.
Tasks Performed
Established a new recruitment strategy. Managed and supervised several project. Trained and re-created the IT business unit.
Achievements
Technology Used
HTML, CSS, JavaScript, jQuery, PHP, CakePHP, MySQL, ASP Classic, VBScript, MSSQL, Apache Web Server, Subversion, Adobe Photoshop
You can find more information about Chalmers Technology Consultants here
Attentic (Encubator)
Responsibilities & Goals
The technical/software development of the product, including managing external team of developers. Alignment of customer need and direction of development and project.
Tasks Performed
Explored and evaluated technical possibilities, including integration with existing external products. Arranged and participated in numerous sales meetings.
Achievements
Technology Used
Python, Django, Google App Engine, Google Big Table
You can find more information about the Encubator, the incubation company for Attentic, here and Chalmers School of Entrepreneurship, the school that supported Attentic, here
References
Tingstad Papper
Royal Caribbean Cruises
Chalmers Technology Consultants
Citro Webbdesign
Project Management & Leadership
Every organization continuously deals with project management and leadership. How well a company performs in these areas is usually highly related to the level of success a company experiences. Throughout my life I have often had the opportunity to assume a leadership role, whether it’s a temporary role during a project or a more permanent position. Below are two experiences of mine as a leader:
Project Manager at Tingstad Papper
During my time as project manager at Tingstad Papper I managed a medium-sized web project for slightly less than a year. I faced many challenges throughout the project, among them handling a deficit in time available from the designer (a key resource), getting work done by other departments and handling being both project manager and the lead developer simultaneously. However, due to proper planning, clear communication with superiors and a solution-driven mentality of everyone involved, the project was successfully delivered on time and within budget.
IT Business Unit Manager at Chalmers Technology Consultants
As the IT Business Unit Manager, I was faced with the challenge of exceeding previous results while having an almost completely new team. Lots of focus was put into training and sales, while pushing a you-can-do-it mentality. A good balance between the risk of critical mistakes and help provided to junior consultants was attained by ensuring that every team member felt he/she had the capability to perform individually, regardless of challenge, while ensuring help was never far away. This resulted in great efficiency and exceeded targets.
You can find more information about these jobs under Work Experience.
Sales
Good sales is the key to any company’s success. I have found through experience that there are many types of sales: internal and external, immediate and indirect, fast and slow, etcetera, and I find it critical to be able to adapt my sales strategy to different situations. Below are a couple of examples of sales experiences I have had:
Slowly Getting the Customer Hooked (Attentic)
During this sale a long-term approach was taken to slowly hook a medium-sized broker. By having the customer involved with development and testing of the product, we made sure the customer got what it wanted and thus assured a safe sale.
Recurring Sales Due to Customer Management (Citro Webbdesign)
By careful management of the customer, a mid-sized Scandinavian reseller, Citro managed to get an increasingly larger part of the customer’s business, both in terms of responsibility and sales. By creating a good relationship, Citro became a part of the planning process and thus was assured to be picked for upcoming projects and contributed to the growth of projects in general.
Internal Sales (Tingstad)
During the startup phase of a relatively large project, I made every effort to find advocates among the company’s key managers to ensure that these managers would support and promote the project among other managers, as well as the CEO. As a result, I always had full support in getting the resources needed without having to go through unnecessary discussions with other managers.
Office Software
Although it can seem trivial today, skills in office software should not be underestimated. The looks of a presentation can many times be the difference between successful or failing sales and efficiency in these programs is the key to save time. I consider myself an experienced user in the below programs, which include everything from being able to put together beautiful charts to advanced macros.
Microsoft Office
Google Apps
Other Office Suites
Performance Management
As performance and strategy have become more and more vital to organizations, proper management of them has become necessary. It is important to drive the workforce to achieve increasingly better results, while making sure the organization develops in line with the overall strategy. As a company grows, a more structured and transparent way is required, which leads to the birth of the balanced scorecard.
A Balanced Scorecard Implementation Experience at Royal Caribbean Cruises
During my time at Royal Caribbean Cruises, I got the opportunity to participate in the roll-out process of their balanced scorecard (BSC). As with most roll-outs of BSCs, focus was put upon lessening the gap between top and bottom management and to get the whole organization more engaged in the performance management process. The outcome would be a more aware and aligned workforce, which would lead to an increase in the company’s overall performance. To achieve this, several sub-goals were set, including:
- Turn top-down communication into two-way communication
- Update metrics to better reflect and align with the overall company strategy
- Properly involve all directly affected individuals
The Result
The project received good response from everyone involved. Unfortunately, I do not have insight into the internal progress any longer and hence have no numbers to present.
You can find more information about the balanced scorecard here.
Marketing
I find that marketing, the strategy and idea behind how to reach customers, is among the most important activities in any company and the backbone in sales. In addition to studying industrial marketing and using my marketing knowledge as a base for any business activity, I have also done several marketing projects:
Marketing Plan - A Consulting Job for Processkontroll
During my time at Chalmers Technology Consultants, I participated in a marketing plan project for Processkontroll. The project focused on Processkontroll’s quickly expanding division for building natural gas stations; Processkontroll is the leading natural gas station developer in Scandinavia. The goal was to analyze and estimate potential investment scenarios and expansion rates.
You can find more information about Processkontroll here.
Market & Competition Analysis - My Bachelor's Thesis with Attentic
This thesis, titled “A First Look at the Industry of Company-targeted Social Media Tools”, was a part of the startup project Attentic. This thesis explored the conditions of Attentic’s market based on Porter’s Five Forces Model. Estimating market size and evaluating the competition were, among other things, part of the project.
You can find more information about Attentic here.
Operations & Logistics Management
In many businesses operations & logistics are areas where hands on, immediate changes can make the largest difference. At Chalmers University of Technology, both operations and logistics are two key areas of focus, due to the closeness of companies such as Volvo Cars, Volvo Trucks, Scania Trucks and Saab Automobile. I completed several classes related to these subjects:
Industrial Organization Development
This class provided knowledge and a set of tools geared towards how to manage complex issues, such as how to keep work force motivation and safety while trying to rationalize and streamline a production system. A real-world case of a poorly run production facility was included as a major project.
Production Management
This class mainly discussed design, management and improvement of the core business of any company, regardless of service or product orientation. Several case studies were included where questions were analyzed, i.e. where to locate a production facility for a global company.
Logistics
This class discussed key areas of any supply chain, such as key efficiency variables and flow of resources and information. The well-known Beer Game was taught as a part of the class.
Modeling & Simulation
This class aimed at providing full knowledge of how to use simulation as a method to analyze any part of a business. The examination consisted of a large simulation project of a medical center.
Business Development
Business development is the core of all management and should be the core of any business. It can take many forms and should be a continuous effort. During my six years of work experience, I have continuously embraced business development. I have had many opportunities to participate in these efforts, some of which were at Attentic and Chalmers Technology Consultants:
Business Development from Scratch at a Startup Company
As one of two co-founders, I took part in all aspects of the business development at Attentic. Greatest attention was put upon product development, but a lot of focus was also put into securing financing and a first sale. Our goal was to find market fit for our product by trying to find an interested customer as well as developing the product based upon where it would create most values for the customer. Meanwhile, we needed to make sure that we had a plan for materializing the product, which included finding developers and financing. It was determined that market fit and an initial customer were found and financing was almost secured, but unfortunately, the project was shut down due to different goals among the owners.
Business Development at an Established & Expanding Company
As a part of the management team of Chalmers Technology Consultants, I took lots of interest in the main issues at that time: stability, efficiency and growth. I promoted more structure, more efficient and streamlined processes, more training of new personnel, less re-invention of already established processes and, most importantly, more focus on key activities. Ideas that were, and are still, being implemented include: creating different job-offer templates, making internal projects non-mandatory and clarifying responsibilities within each business unit. The company has since grown with a 50% increase in turnover but a mere 20% increase in workforce.
Business Systems
Today, business systems massively reduce companies' need of employees as well as make things possible that one could only dream about fifty years ago. Despite this, business systems are usually very complex issues in every company, due to the fact that they determine the core processes of any company. In addition to a class in Information Systems in college, I have also come in contact with business systems through my work experience:
Oracle Hyperion Essbase & Oracle Hyperion Performance Scorecard
During my time at Royal Caribbean Cruises I used Oracle Hyperion Essbase & Oracle Hyperion Performance Scorecard extensively to create performance reports and to perform product life-cycle analysis. Essbase was used in order to pull data for reports and to provide a better understanding of anomalies. Hyperion Performance Scorecard was used in the role of administrator, meaning I was responsible for the setup as well as reporting.
You can find more information about Oracles EPM products here.
Jeeves ERP System
As a software engineer and project manager at Tingstad, I dealt with most parts of their installation of Jeeves ERP System. This included the design of new features, managing customizations done by external resources and providing support to other employees as well as the integration of the e-commerce platform.
You can find more information about Jeeves ERP System here.
Contact Me
Feel free to contact me regarding career opportunities, job inquiries, collaboration opportunities or anything that may come to mind. You can contact me through e-mail, phone, social media or by filling out the form below. Unless traveling, I always respond within 24 hours.
Derby: Enhancements and bugfixes to Racer
24th of August, 2013 04:54 PM
Lately, me/B&B Web has put some serious effort into fixing issues and making enhancements to Racer, and in particular filters. Basically we use a fork of Racer in all our projects which we always keep updated with the latest in the original repo from codeparty, but with our additional fixes on top. You can find the repo and our patch branch at: https://github.com/BBWeb/racer/tree/updated.
What is fixed in our branch?
Bugfixes
There are a lot of issues with filters as it stands at the moment in the codeparty-version of Racer. Among them:
-
Arrays are completely useless as sources to filters. They should work much better in our branch but I still recommend using collections with proper ids instead of arrays due to refLists (which filters relies on a lot) doesn't seem to handle arrays reliably. We've tried to get refLists to work much better with arrays, but after fixing some stuff we basically thought - hey, why not convert our data to collections instead and save us a ton of headache.
-
We've added a new feature to refLists which is something we call "autoPatchIds". Basically, this patches the list of ids refLists uses when items in the underlying data is added/removed, BEFORE any events are emitted. This is very important when using filters (which breaks otherwise) because Derby uses the events that are emitted from Racer to update things, and when Derby gets the events (and auto-patching isn't enabled), Derby will grab data from the filters after it has already updated itself. The data in Racer will not be in sync with the state Derby assumes things are, and a lot of issues arises. Basically, this fixes a lot of issues.
-
Another issue that arises in filters is due to faulty assumptions about when things happen och changes and removals. Basically, if one item in a collection is removed, this will trigger a change of value to void 0 (undefined). If anything happens on this removal, such as if there's a blur event in Derby that triggers an update of a value, this will happen after the filter/sort has shuffled things around already. Since Derby triggers this on a ref, and uses an old reference path, which will not most likely point to a different item than intended. Thus, Derby will trigger an update of the wrong item.
Enhancements:
-
One can now send in a context object into a filter/sort. Basically this object can be used to do comparisons. E.g.
model.filter('collection', function (item, i, items, ctx) {
item.attribute === ctx.attribute;
}, {attribute: 'something I want to filter on'});
In the above scenario, we will get all the items where there's an attribute called 'attribute' that is equal to 'something I want to filter on' (the string passed into the filter function). Why have this? A workaround for using context-objects are to store the data on the model and then get it from there. However, there are downsides to this. In particular, no refiltering will happen automatically if the data in the model is changed. Further, this is a bad design pattern - the filter should be independent from the model/data. If you want to update the context object you've sent in, there is now also a .context(myNewUpdatedContextObject) method that can be triggered on any filter (or sorts - these are the same object in Racer). This will also ensure everything stays updated according to what the filtering should result in - i.e. it ensures the reactiveness is kept proper.
-
There are two more new methods that can be called on any filter/sort: skip and limit. Skip works like this:
var myFilter = model.filter(...);
console.log(myFilter.get()); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
myFilter.skip(5);
console.log(myFilter.get()); // [6, 7, 8, 9, 10] - we've skipped the 5 first
Limit works like this:
var myFilter = model.filter(...);
console.log(myFilter.get()); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
myFilter.limit(5);
console.log(myFilter.get()); // [1, 2, 3 ,4, 5] - we've limited the result to the 5 first
They can also be used together. Basically, they make pagination very much simpler. Furthermore, you can also always pass in a limit to a call to skip, and the reverse, in other words, the methods actually look like this: Skip:
@param {number} skip - the number of items to skip
@param {number} limit - the number of items to limit the result to - optional
function skip(skip[, limit]) { ... }
Limit:
@param {number} limit - the number of items to limit the result to
@param {number} skip - the number of items to skip - optional
function limit(limit[, skip]) { ... }
A pagination example:
.skip((page - 1) * itemsPerPage, itemsPerPage);
The reason why you'd want to do both skip and limit in the same call is to reduce the amount of updates (refiltering/resorting) that are needed (from two to one).
-
We've added a new method to model, called .ats([path]). In this method, the combined path of the current model/scoped model + the (optionally) path sent in must point to an array or a collection. This method will return an array consisting of all the items in this array/collection - but only references/scoped models (the same as you would get from doing model.at()). E.g.
model.set('_page.collection, {
'a': { /* ... */ }
, 'b': { /* ... */ }
});
model.ats('_page.collection')
=== model.at('_page.collection').ats()
=== model.at('_page').ats('collection')
=== [model.at('_page.collection.a'), model.at('_page.collection.b')] // All true
-
We've added the same functionality to filters - the ats method. This works different depending on the scenario. There are two scenarios, either it's an unref'd filter, or it's a ref'd filter. The unref'd filter will return what is expected, model.ats() but filtered and sorted based upon the filter/sort sent in. However, if ref'd, myFilter.ats() will return a list to all items at the ref-path. In general, .ats() can be useful when one wants to easily loop through a list of items but not get them first (albeit since Racer 0.5, there should be little to no performance penalty doing so, but it looks better)
-
We've exposed a second argument in model.dereference (forArrayMutator). Basically, dereference doesn't work if it has to go through an array (such as any refList). This functionality already existing internally in Racer, but it was previously not possible to pass this into Racer easily.
Other:
-
Tests have been converted to pure JS (previously in CoffeeScript)
-
We've added test-cases to more or less all our new features and bugfixes
-
Lots of comments regarding each thing fixed can be found in the commits and issues/pull requests opened (in codeparty's repo).
To summarize
The best would of course be if these fixes and enhancements can be accepted into the codeparty repo (a bunch of PRs exists for above). In the meantime however, especially if you want to work with filters (which is one awesome feature in Derby/Racer), I'd recommend using our branch. I hope this will relieve a lot of headache (and stupid workarounds) to people using filters.
How can you know that our fixes are any good and won't break stuff? Well, we can't make you any promises there. We've tried to be very careful when patching Racer, and we've tried to touch as few rows as possible while still fixing the root-cause of issues instead of just patching on top to fix special scenarios. Furthermore, we've tried to make sure we have good test coverage, made sure to not break any other tests on the way, and even further, we're running this branch in production with one project, and will with two more very soon, and they seem quite fine.
Any comments, feedback, issues, etcetera is very welcome!
PS. I can also recommend our tracks repo which basically has existing PRs from the codeparty repo pulled into the updated branch which fixes a few irritating issues like faulty behavior/side-effects of app.exit.
The Weblog
Citro Webbdesign
T2B
Sales
Education
Gracias
Chalmers Technology Consultants
Tingstad - Home
Chalmers Technology Consultants - Vision
Royal Caribbean Cruises - Navigator of the Seas
Tingstad - Foodservice
Gracias - Crosswords
T2B - References
Plan B - Logo
Chalmers - Avancez
Tingstad, Royal Caribbean Cruises, CTK, Citro
Office Software
Processkontroll
Sales Network
The Balanced Scorecard
Project Management - Gantt
Business Development - Startup
Lean Principles
Oracle Essbase - Oracle Hyperion Performance Scorecard
Microsoft Office
24 Hours
Management Skills
Tingstad
Tingstad Papper
Work Experience
Marketing
Carl-Johan Blomqvist
Portfolio
Operations & Logistics Management
Business Development
References
Plan B
Attentic
The Encubation Process
Chalmers Technology Consultants - Charm
Royal Caribbean Cruises - Hyperion Performance Scorecard
Gracias
Tingstad - Cups
Gracias - Memory
T2B - Electronics
Plan B - Logo
Chalmers School of Entrepreneurship
Business Systems
Porter's Five Forces Model
Attentic, CTK & Tingstad
Leadership
PDCA Cycle
Supply Chain Management
Jeeves ERP System
Microsoft Excel Charts
Tin Can Telephone
Archive
Components performance26th of March, 2021 Common traps26th of March, 2017 Project Management: The Idea/Feedback Bucket28th of July, 2014 Derby: Enhancements and bugfixes to Racer24th of August, 2013 Derby: Issue with array-like bindings in the view and workaround2nd of July, 2013 Derby: Authentication part #131st of July, 2012 Michael Nelson: 6 things I'm loving about Derby31st of July, 2012 CJBlomqvist.com/blog - now with RSS!31st of July, 2012 Makefile for optimizing css, js and index files10th of July, 2012 DerbyJS: refList-wrapper update27th of June, 2012 DerbyJS: Introducing the onrender method render event and its possibilities (Updated!)22nd of June, 2012 Re-launch of Blog!19th of June, 2012 Effective Usage of Mobile Orientation21st of September, 2011 Image Loading in Today's Browsers7th of September, 2011