Strong/weak typing describes the ease of mixing variables of different types in expressions. Strong typing does not imply static typing just as weak typing does not mean dynamic typing. To put it simply, if a programming language tries to interpret an expression containing variables of varying types at runtime (e.g. adding an int to a … Continue reading Programming Language Type Systems II
Category: Languages
Programming Language Type Systems I
Static, dynamic, strongly-typed and/or weakly-typed; the terms we routinely use to describe typing in programming languages. However, these terms (especially the last two) have more to them than is generally assumed.
A peek into JavaScript’s Array.prototype.map and jQuery.map
This post describes the difference between Array.prototype.map and jQuery's map implementations.
EmberJS vs Backbone
Although I have never tried out the Backbone framework, I had to review it some time ago when I had to select the JS framework to use. I wrote this last year so if anything has changed please let me know. EmberJS Strengths Allows developers to control the entire page at runtime and not just … Continue reading EmberJS vs Backbone
EmberJS: The Rant
So I started on EmberJS some time last year; after spending an inordinate amount of time trying to design a prototype with people located all across the world. Finally, after several dreary demanding iterations and lots of work, we finally agreed on an implementation. One of the dev members suggested using EmberJS or backbone. Based on his review, backbone … Continue reading EmberJS: The Rant
Asynchronous Module Definition (AMD)
AMD (No, not the chip maker) stands for Asynchronous Module Definition - a cool new way of loading scripts. AMD attempts to solve some of the limitations associated with the orthodox approach of loading scripts.
Static and Instance Methods in JavaScript
I thought I quite 'understood' inheritance in JavaScript until I got flummoxed while trying to test my understanding. The JS prototypical inheritance model is hugely different from the classical approaches of the languages I started out with; the only way to fix this that I know of is by writing code and after spending hours screaming at my console I finally saw the light Alhamdulilah.
Events in JavaScript
JavaScript events are created in response to user actions such as clicks, mouse moves or key presses; not all events are triggered by user actions though, some are automatic such as the onPageLoad event. JavaScript's event model allows developers to write event handlers which respond to these events and provide the interactivity we have come to … Continue reading Events in JavaScript
The language Series: Python
Python provides easy-to-use tools for data cleaning, processing and graphing;
The language series: JavaScript
I was pretty much amazed to see a JavaScript library for Arduino last year; it's common knowledge that the language powers uncountable web sites, mobile applications and even Windows 8 apps, but Arduino? Mind-blowing. The ever-growing need for powerful web experiences propels the adoption and development of this remarkable language. JavaScript was influenced by C (syntax), Java … Continue reading The language series: JavaScript
The language series: PHP
All languages have flaws and PHP is no exception; here are some of the reasons why people say PHP is baaaad for your programming health
The Language Series : Java
Java! The language I once loved so passionately that I saw other languages as being inferior. Now, I rarely use it - the last time was while writing an Android app early last year.
The language series: C
I finally took the compulsory software engineering course notorious for its very difficult course project - writing a bitcoin client in C. Alhamdulilah, we successfully completed the project: about 18k lines of code, automated builds/documentation/tests and lots of other stuff. I figure we rank around 7 or 8 on the Joel 12-point scale even though some … Continue reading The language series: C
JavaScript: The functional Programming Parts
Yes, a lot of people think JavaScript is just another object-oriented language but the language differs in many ways from the Java/C++ class of programming languages. For example, JavaScript uses prototypical inheritance versus the classical inheritance favoured by OO languages; this makes it easier to get on new behaviours... and also makes it really really easy to shoot yourself in the foot.
Book Review: JavaScript, The Good Parts
All languages have good and bad parts; to be a master developer in any language, you need to know and avoid the bad parts. Douglas Crockford goes through JavaScript, showing how to write beautiful code in this much-maligned language in an easy-to-follow and understand manner. Brendan Eich developed the language in a rush (I think in … Continue reading Book Review: JavaScript, The Good Parts
I am language-agnostic
Once upon a time I used to think programming in Java was the best thing anyone could do. All this changed when I started my internship and realised I had to program in PHP whether I liked it or not. PHPwhat?! I didn't like it and felt that PHP was just not the way to go. … Continue reading I am language-agnostic
Functional Programming & ME
After finishing Rebecca Murphy's jqfundamentals and finding it to be quite an enjoyable and smooth read, I decided to learn JavaScript; I scanned my languages-to-learn list and quickly brought JavaScript to the front ahead of the others: Python/C/C++/C#/Ruby/Bash. One of the motivating factors was the fact that JavaScript supports functional programming; a paradigm I have … Continue reading Functional Programming & ME
I’m beginning to hate PHP?
While working on a new web application, I felt somewhat bored because I was going through my same old cycle all over again – there was nothing challenging or exciting to me. My first thought was that I was getting used to PHP, but deeper thoughts proved me wrong. It boiled down to two options: … Continue reading I’m beginning to hate PHP?