Saturday, March 2, 2013

Ready for jQueryTO – Day 2

After a mind-bending Day #1 @jQueryTO – even #FirstWorldProblems like learning “the hard way” the pain of form versus function and that it might be about time to trade in my Nexus S for a Nexus 4 (thx Adam!), or even a Nexus 7 (thx Ian!) – I decided to compile my choices for Day #2:

jQueryTO: day #2/2
State of jQuery UI, with Scott González
The Holy Grail: Client and Server, with Tim Branyen
An ambitious talk discussing the holy grail of accessible web application development. Discussing CommonJS, RequireJS, and Backbone complications and solutions to sharing. An example application will be discussed and structure explained. Even if you are not interested in sharing code with the server, techniques and structure presented will be useful for any application in any framework.
AngularJS just ain’t just another MVC framework… with Pearl Chen
You’ve probably heard of BackboneJS as a JavaScript MVC framework for building web apps but it’s worth exploring other options when you want to get more out of your framework. AngularJS is highly opinionated which makes it easier for beginners to grasp core MVC concepts, while experts will enjoy its integration with Yeoman. And anyone who wants to write less boilerplate code will enjoy its data binding abilities. If you’re like me, AngularJS just might turn into your favourite MVC framework.
The Dev Process—collaborating with designers, prototyping, & how to +1 your dev knowledge while at work, with Monika Piotrowicz
We’ve all been to conferences where we’re filled with ideas and inspiration, only to come back to work and be forced to put them all aside. Deadlines loom, designs change, and we still need some research time before we can confidently implement that "cool new thing" we saw. Using practical examples, this talk will introduce a process that supports on-the-job dev learning by alleviating these strains. This collaborative process brings developers into projects sooner, builds in research and prototyping time, and is centered around continuous communication with designers and clients. This talk will dispell the myth that process is a dirty word. Instead, it will demonstrate that a well-developed process can push technical boundaries, enhance working relationships, and increase the quality of your applications, all while maintaining dev sanity.
Offline Mobile Web App Architecture & Design, with Boaz Sender
In this talk I’ll step through mobile web application architecture with a focus on minimizing data transactions, and managing client-side state for offline-able apps. This is a framework agnostic talk where the focus is on application flow and design philosophy.
Scaling Backbone.js Applications With Marionette.js, with Derick Bailey
Nearly everyone understands how to build a simple JavaScript application these days. With the recent explosion of JavaScript MV* tools and frameworks, though, many of us find ourselves in over our heads, looking at patterns and practices that work well for small applications and pages but fail when scaling to anything substantial. In this session, Derick Bailey will give you an introduction to many of the patterns and practices that your JavaScript applications need to be scalable. You’ll learn about file and folder organization, the necessity of separating the various concerns of your application, patterns that aggregate and coordinate functionality from other parts of the system, and more. And all of this will be illustrated with Backbone, MarionetteJS and additional plugins that can give you an edge in creating scalable applications in JavaScript.
Fixing Broken Windows: 10 small things that will instantly improve your project, with Sam Breed
Informal social controls have a big impact on how what’s considered acceptable behavior. Building on the theory that a single broken window on an urban block can lead to the perception of lawlessness and actually be a contributor to criminal behavior, my talk will focus on how to spot and repair the "broken windows" in your JavaScript applications. Even seemingly-trivial anti-patterns like commented-out code, mixed spaces and tabs, or missing documentation can be “broken windows” that lead to further decay and software entropy in your large jQuery projects. I’ll cover 10 things to look for, from minor mis-steps, to organization and to common design patterns that will restore order in your applications.
Developing with Grunt, with Dan Heberden
Grunt is a task-based command line build tool for JavaScript projects. We’ll cover its impressive project initialization and scaffolding capabilities, automated task running, and how to extend and customize your grunt project to suit your needs. If you’ve ever wanted an easy way to concat and minify your JavaScript and CSS, run your tests, lint your code, and incorporate custom build functionality: this is the tool for you.
The 2013 Frontend Disapora, with Paul Irish

See you tomorrow!

Friday, March 1, 2013

Ready for jQueryTO – Day 1

Yeah, you’ve got it: jQueryTO – the first official Canadian jQuery conference – is coming to Toronto in March 2nd & 3rd, 2013 – that’s right, the kickoff is tomorrow!

jQueryTO: day #1/2

Back in AIESEC I quickly learnt that when you’re attending a conference that runs multiple tracks, you’d better do your homework in advance. Even more when it’s going to be a sold-out event, filled up with amazing speakers.

So today I did my homework, made my choices, and here are the presentations I’ll be attending tomorrow:

State of jQuery 2013 with Dave Methvin
This year is a significant one for jQuery; version 2.0 of the library is making a break with IE 6, 7, and 8 for environments where support for old IE isn't needed. Yet the jQuery team continues to develop and support jQuery 1.9 for the open web where old IE is (sadly) still common. Many other projects of the fledgling jQuery Foundation will also debut this year, such as a new Plugins site.
Hardware Access and Device APIs with JavaScript and HTML5 with Wes Bos
The browser on your device is growing up! With new HTML5 APIs we are able to access your device’s hardware and start writing apps that rival native big boys. HTML5 APIs include access the the device’s camera, microphone, GPS, compass file system and accelerometer. This talk will take a look at what we can start integrating into our apps today as well as what we can look forward to in future releases of mobile browsers. Be sure to make it out to this as as it will be packed with fantastic live examples including a mobile based motion detection security camera and a CSS3 speedometer!
You Want Client Side Package Management, with Ralph Holzmann
Node.js users know what I'm talking about. `npm install`. It's a beautiful thing. Guess what? It can be *that easy* for the browser too. This talk will outline where browser package management has been, and where it's going. I'll outline the pros and cons of the various client side package managers and show you how you can start using them in your existing projects today. Learn how to make you and your colleague's lives easier when stitching together third party code.
State of jQuery Mobile, with Ralph Whitbeck
Get the scoop on how to use jQuery Mobile to build dynamic HTML5-based web sites and apps that work on all popular mobile platforms from Ralph Whitbeck, jQuery Mobile's Developer Advocate. We'll cover the basics of how to use the framework, advanced tips and tricks, new features, and take a look into of the project's strategy and future roadmap to see how we will embrace principles of responsive design to create compelling experiences that span smartphone, tablet and even desktop devices from a unified codebase.
Submitting Bugs the Right Way, with TJ VanToll
Bugs: Fixing them is what we do, day in and day out. Yet when it comes to submitting bugs, many developers don't know where to start. In this talk, we'll walk through the process of creating a bug report, from finding an issue, to building a minimal test case, to reporting the issue on a bug tracker. Along the way we'll discuss tips and tricks that can help you with your day to day development. Submitting bug reports is important, open source libraries like jQuery depend on them to remain bug free. Come learn how you can help!
Build an Experience… Not another framework, with Jason Scott
It is time to stop building your own framework, and spend time on what matters, the experience. Your user will not care that you wrote your own page navigation model or you found a workaround for a quirky device you never heard of until yesterday and neither should you. Jason will guide you though creating your own experience, leveraging the power of jQuery Mobile and share with you the lessons that he has learned in creating the BlackBerry 10 experience in jQuery Mobile.
Avoiding Regressions in Third-party JavaScript, with Cameron Westland
There has been a lot of talk about Third-party JavaScript lately. Companies like Disqus, Facebook, and Twitter are literally building their businesses on it. A new generation of Third Party JavaScript is being developed which provides User Experience as a Service which can be embedded into other applications. When you combine the complexity of delivering a user experience to a third party website AND continuously innovating and deploying new code, you expose a new domain of problems. This talk will discuss the solutions that we've come up with at Kera to solve these problems.
Depending on jQuery, with Alex Sexton
Over the last several years people have shifted from building sites that have small chunks of dom-centric code for quick interactions, to building full-fledge web applications that require hundreds of thousands of lines of code. We also see people shifting from centering their applications around jQuery, to using it as a dependency in an MVC app. Let's chat about how you might build a large application with jQuery, how you might modularize your app, and how you might deploy it for optimal speed. Big surprise, Alex is talking about large apps and jQuery. Expect some Backbone, Require.js, and a few boring network graphs.
Gone in 60 frames per second, with Addy Osmani
will tell you tomorrow what this was all about

See you tomorrow!

Monday, December 10, 2012

Looking for a passion for Ruby, cloud and big data

Back in 2010…

…Antonio was announcing that IBM was looking for top notch student hackers.

After a process that provided many skill-building lessons, Henrique and myself joined the team at the IBM Toronto Software Lab.


…it's time again to look for the right attitude and for a matching potential.
We are looking for 2 students that are passionate about technology and their craft!

I am biased but I believe that these are the best positions that a computer science student can want. Since I flew in straight from Romania, I grew in an Agile environment with Ruby and Rails—from zero to deployment—with cloud computing, big data and related technologies.
Our team is best described as a "Startup within IBM". You get the best of both worlds: a highly challenging environment where you get to try to do absolutely everything and a stable environment where you can focus on developing great ideas without being distracted by the instability of a startup.


  • you are keen on using bleeding edge technologies
  • you have a hacker mentality
  • you are willing to work in a start-up like setting but enjoy stability and resources of a leading technology company

then you will gain experience that is unmatched. You will work hand in hand with some of the best talent in the industry architecting and building the coolest tech. Oh, and this internship is for a period of 16 months, and yes: it's a paid internship.

If you are looking for a rewarding challenge, and if your eyebrow raised in a positive way while reading till here, please get in touch (marius dot butuc at ca dot ibm dot com gmail dot com) and tell me a bit about yourself. I will provide you with the information on how to apply through the official IBM channels and we'll take it from there.