Before leaving on vacation, I powered my way through Code School’s AngularJS tutorial. (Okay, it wasn’t that long or tedious; I had three days left in a short, holiday week and it provided a good/productive distraction for an hour or less each day. It’s even free, so give it a shot yourself.) Since then, I’ve been reading other intros to AngularJS articles and I was directed to watch Dan Wahlin’s 60-ish minute intro to AngularJS. There was one difference that I picked up on: Code School used this while Wahlin used $scope in their controller. Essentially:
Code School style:
var app = angular.module('myApp', []);
app.controller('myController', function() {
this.someProperty = 'foo';
});
Dan Wahlin style:
var app = angular.module('myApp', []);
app.controller('myController', function($scope) {
$scope.someProperty = 'foo';
});
Rather than refer to these styles as Code School/Wahlin styles, I’ll use the more conventional this (Code School) and $scope (Wahlin) labels. I found that using this vs. $scope has other implications in the HTML code as well. Namely, giving an alias to a controller and using the alias later on only works if the this convention is used.
[Continue? ...3...2...1...]
I have the sinking feeling I’m not keeping up with technology as much as I should when I hear of these frameworks/libraries/platforms/etc., visit their webpages, and am still left wondering what it does. More importantly, I am unclear on when I’m supposed to use it and for what purpose. I’m not sure if it’s a “just me” problem or if it’s also the fault of the developers. Or maybe it’s the fault of the developer culture?
[Continue? ...3...2...1...]
I ran across an interesting article on the O’Reilly programming website on using JavaScript without the ‘this’ keyword. While it sounds plausable to implement, and may even be the direction developers head towards (eventually), I found it conflicts with my preferred dynamic namespacing pattern using this as a proxy. I’ll refer to the pattern as “dynamic namespacing” for short in this post, but just be aware there are other tweaks that fall under this shortened general label.
[Continue? ...3...2...1...]
Hammerwatch is a nostalgic dungeon crawler, sort of how Diablo II used to be. But I am reminded more of Gauntlet for the SNES and maybe the N64, which I believe has screwed up my thumbs for life. The main difference is not all classes are ranged. Straight hack-and-slash with simple game mechanics. It has a hint of rogue-like characteristics in the sense that you have limited lives and once you hit 0, it’s game over. It’s much more fun to play in a group, but I also enjoy playing by myself.
[Continue? ...3...2...1...]
Reus was [yet another] one of the indie games I had read about, had an interest in playing, and waited for its release on Humble Bundle. I haven’t played a lot of building simulations, maybe a small dabbling with Civ4, but I found the simplicity of Reus on the surface to be enticing enough to draw me in. I enjoyed my time with Reus, which has a good amount of goals to reach, but about half way through those goals, I lost interest. Not in a bad way, but I reached the point of not playing for a week and didn’t have the desire to pick it up. Perhaps months down the road, I’ll want to pick it up again, but for now I’ll consider it “completed.”
[Continue? ...3...2...1...]
I got the Year of Luigi 3DS as a gift back in January, which came with Mario & Luigi: Dream Team (MLDT). I started playing it after I finished Tomb Raider, thinking I could finish it in about a month. I just finished it today. It took me 50 hours and 36 minutes to beat. This was my first Mario RPG game and while I enjoyed it, I’m not sure if I like the concept of Mario RPGs.
[Continue? ...3...2...1...]
My library of games to play keeps growing, no thanks to Humble Weekly Bundles, but the time and drive that I have for playing games has shrunk. I have been trying to finish games as week-long test-drives are just filling me with more guilt. At the same time, I have also been more tempted to drop games if they don’t hook me soon enough. Element4l was one of those games I nearly dropped, but decided to keep with.
I’ve had a fascination with the theme of classical elements (earth, water, air, fire) since middle school/early high school when I wrote my first novella around them and started designing a website for it. When I saw Element4l offered in the Humble Weekly Bundle and it didn’t look like a cheesy use of the theme, I had to give it a shot.
[Continue? ...3...2...1...]
I like to think I have a bit of an eclectic background. Prior to undergrad, I was doing web design as a hobby. I also had a hobby of doing traditional art (drawing, painting) so it wasn’t a big stretch to be interested in design. However, at an internship during undergrad, I realized I really hated web design and switched into web development.
At the time, my university offered a variety of computer science majors. It was always described as a 1D-spectrum going from low-level “engineering” to high-level human-interaction to try to appeal to more potential students. (Today, this may be better described as a tree than a straight line with the addition of multiple new majors.) My undergrad degree was at the lowest level. My graduate degree was at the highest level. I did this on purpose in part because I thought it would be cool, but also because I was curious about what was at the “other end.”
Lately, I’ve been reading and experiencing a few things related to user experience (UX), which is leading to my opinion that UX is going through adolescence. It’s had its “infancy” and “childhood” in that there are now many companies looking for UX designers and there is a common expectation of their work. But it’s far from a well-established or respected position in comparison to, say, a software developer/engineer.
Part of the issue is UX is also art and not everyone will have the same taste in art. Taking a parallel from web design, if the client doesn’t like the presentation, layout, color scheme, images, etc. of a webpage, the designer is requested to fix it until the client likes it. This can be frustrating if the client can’t make up his mind and for a variety of other reasons.
In UX, the client is the user. This means there could be many users. Hundreds. Thousands. Millions. If users are complaining (think Windows 8 Metro and start menu), then the general atmosphere today is they had better well fix it. But, strangely, users are often forced to go with whatever decisions the company decides on and often the decisions are contrary to user complaints. Or, companies take a long time to get around to “listening” to their users (Windows 8 Metro is expected to get the start menu back at least 2 years after the release of Win8). Companies are taking the stance of we-know-what’s-best, much to the frustration of (often very competent) users.
[Continue? ...3...2...1...]
I hacked together this bit of trickery from various articles and coffee-fueled ingenuity. Or maybe just illusions of grandeur. After all, I happen to like this cobbled-together feature, but my clients may not. Nonetheless, this was an interesting puzzle to figure out and when it finally all came together, I got that nice rush of satisfaction for solving it. And what’s more, I’ll be sharing it in the hopes someone else will find it useful.
The basic premise is I am comparing two files in a similar fashion to Beyond Compare and other similar products. The actual comparison is much simpler and you can think of it as an array of strings of a set length (e.g., 10). These strings are extracted from the larger file. If there are any differences between the characters, I want to display it as red. To further up the aesthetic value, I wanted to add line numbers to make it easier for someone to go to the file and figure out which line is different (remember, I’m extracting the strings to compare so the line number displayed on the webpage will be different from the line number in the file).
[Continue? ...3...2...1...]
In my rather small application, one of the requirements is to provide a couple of different types of files for the user to download. Specifically, .xls and .xml files. The common question of how to prompt the user to download the file, rather than attempt to load it in the browser, was not an easy question to find the answer to. Likewise, finding the “proper” way to do it was another challenge.
[Continue? ...3...2...1...]