open source

{the beauty of code}

Over the last couple days I was fortunate enough to attend the CIPS {Canadian Information Processing Society} 2010 Spring Seminar and had a very good time.  Highlights for me included meeting up with some previous students of mine (lab and class) as well as meeting some new folks but also the very inspirational talks that were had, espeically by Jesse Wilson from Google, David Gerhard from the U of Regina, and Michael Geist from the U of Ottawa. 

What hit me the most during the 2-day event was the fact that I need to become more engaged with what I am a proponent of.  As those who actually read this awesome blogosphere of mine {ha}, know that I am very much a proponent of open source technologies.  I use open source software as alternatives to mainstream softwares whenever possible.  I do this because open source provides the most choice for me personally, gives me the freedom to customize and personalize my experiences, among other things.  I am also a fan of the atmosphere/environment of open source, where we have communities of developers and users all working together for something good.  It's just awesome!

That said, I can, and see that I should do more than just spew my beliefs and ideologies.  What I am trying to say here is that I am a computer scientist.  I love computers; teaching and doing research and coming up with design concepts is really what I want to do in this life.  In this respect though I am very much a front-end designer of things, the GUI {graphical user interface} is my focus, i.e. what you see and do when you interact with a program.  This involves developing lo/hi-fidelity prototypes and testing designs with users, seeing what works and what doesn't and improving accordingly.  This I love!  What has been lacking lately though is the back-end programming experiences that are also very much an integral part of the whole teaching, research, and design process.  Jesse Wilson's seminars, which both talked about Google; one about Google Android {open source mobile goodness} and the other about being a software engineer at Google, and David Gerhard's seminar, which talked about alternatives to mainstream software solutions, really brought this aspect to light for me. Specifically, Jesse talked about the beauty of code and the power of it in the development of something, and the feeling one gets from contributing with a team the necessary bits and bites that actually comprise a product.  I had somewhat forgotten this aspect along my academic and industry journey {totally non-existent in my industry experiences thus far}.  I've been viewing coding as a necessary step, albeit somewhat a secondary one.  Really, when I think about it now after Jesse's and David's talks, I see now that it's just as important as the research and design of things {I knew this before, maybe just had forgotten it a tad}.

What I'm really trying to say is that I need to start getting my hands dirty again, back to delving into code.  Now don't get me wrong, in my experiences as a web designer and web system administrator, I've kept up my experiences in code; scripting here and there {ugly scripting no less}, but I think I really need to delve more into writing beautiful code.  Jesse's and David's very inspirational talks have led me to map out a plan which will have me getting more engaged, doing {aka Yodda}, planning the development of code-rich projects in my future {both in Android and other platform environments, bigger web stuffs and other}, more than just what I am planning for my PhD work.

Now, the linkages back to open source, how I started this whole blog posting.  Instead of just being a proponent and user of open source technologies, I see, and now feel the need to start contributing back.  I need to be more engaged in the actual coding/design/research of open source tools, espeically the ones I use daily.  Perhaps I could start by contributing to the documentation side of things {maybe with Drupal or Ubuntu}, leading into something more substantial like contributing code.  Truth of the matter is that I am in a position to contribute so the question is why am I not?  Thank you Jesse and David for giving me that spark of inspiration! -tMac

{PS: To be posted later is my experiences listening to the discussions on fair copyright by Michael Geist, who was also a highlight of the 2010 Spring Seminar.  However, that really deserves it's own post as it is a very important issue and Michael Geist is the leading expert.  His talks were also both educational and very inspiring indeed}

{a social need for open source}

Over the past year and a half, give or take, I have become quite the fan of {F}ree/{L}ibre {O}pen {S}ource {S}oftware {FLOSS} technologies.  The freedom and ability to download a wide range of software, for free, as well as the ability to change up the software code to customize it for personal applications, and even the ability to contribute back to the community {aka Picardism...oh ya!} is something that I truly think enables the highest degree of satisfying user experiences.  I have previously mentioned that I have found, through much experimentation over the past little while, that much that can be done with proprietary softwares can be done using FLOSS-based softwares just as well.  Some prominent examples include Firefox {web browsing}, Thunderbird {email}, OpenOffice (document creation and editing}, GIMP {image editing}, Audacity {audio editing}, among many others {FSF FLOSS software directory

I particularly want to focus this post on operating system technology.  For those not in the know, an operating system is the underlying abstraction layer {bones and muscle} of all computer systems, enabling the many hardware and software interactions that are needed for you to work on computer systems; enabling you to not have to think about such things (see the image to the right {borrowed} from wikipedia).  Much like driving a car; many proclaim that they don't care how the car truly works, just so long as it gets them to point A to B and back successfully with ease {steering wheel, gas pedal, speedometer, etc} and satisfaction {design aesthetic, smoothness of ride, colour, radio, bluetooth, etc).  Truth of the matter is, even for those who say they don't care about this abstraction layer of sorts, that in fact this layer does have an impact in terms of use and usability as well as to what degree of satisfying experiences can be had.  It is all very much interrelated.

Many of us have grown up using Windows or Mac operating systems.  If we use a computer, we should be aware of at least one of these technologies. Now I don't hate these technologies.  Actually they do work quite well, when they work ;-)  However, it's their proprietary nature that I personally feel gets in the way of being able to obtain truly satisfying people-computer experiences.  When using these technologies there can often be times we are coerced, forced even down a path of technological use which may not necessarily be best. We then become accustomed to it, making it the norm and instead of making things better, we just fall into a routine maintaining the status quo.  In fact there is something better, something that better promotes the ideals of interaction and usability and human innovation.  That something is FLOSS. 

For about a year I have been using the Ubuntu opertating system exclusively, minus a brief interlude back to using MacOSX.  Ubuntu is a GNU/Linux FLOSS-based operating system that is highly human-centric.  It's slogan is actually, Linux for humans.  Looking back on my FLOSSy experiences thus far, I find that they have been truly enlightening and satisfying all at the same time.  I enjoy the incremental aspect of FLOSS use, meaning that sometimes things don't always work out on the first try and sure, some effort is needed to get things going, adapted and customized according to my preferences.  I find that this activity is actually needed in modern technological society. Sadly though I see, or have seen, that we as a society have lost something from our use of modern technology. It actually seems that we are becoming "dumb" ...or dumber ;-) to the point of ignorance and it could very well linked to our use of modern technology.  If it's too confusing, or if it doesn't work right out of the box, or if it's too scary, why tinker with it? Why learn why it is the way it is?  Why not try to make it better?  No, instead why not just complain, or call the help desk?  It's easier.  Truth be told is that it is this activity of research and exploration in the things we use daily that is truly one of the most critical human traits we have. It keeps us on the cutting edge, makes us knowledgeable {more knowledgeable} and helps us to innovate and improve our existence.  This is the reason why I love FLOSS so much.  It injects this feeling back, research and exploration, learning, and knowledge gaining while also injecting the feeling of contributing to something good, something bigger, something good for society.

With that I encourage you all to try Ubuntu.  From a human-computer interaction standpoint, it is truly the best place to start your FLOSS operating system experience {and hopefully stay}.  I really think that society would be a better place by promoting FLOSS use.  It promotes a sense of what it truly is to be human.  Perhaps an ideal that is disruptive at first.  It may sound to some like technological socialism.  You know what, it's exactly that, and it's exactly what we need.  In my mind the benefits of encouraging a FLOSS-based technological society are too huge to pass up on.  -tMac

{wtf already apple, i've had my fill of your bullshit}

...and the shenanigans begin again with Apple. FUCK{!} is the only word I have for it all.  I must pardon my language in advance.  Since I've recently switched back to an Apple computing environment, I've been actually regretting it...and here's the why...

Ok, I've had some beefs with Apple recently.  If you've read some recent posts, you know this.  This time is no different.  Apple is up to their usual BS and as such I give a big Colbert wag o' my finger at the software giant as they not so quietly begin their battle of law with various cellphone makers, specifically the infamous HTC, among others.  In the suit, Apple is claiming egregious patent infringement on a wide many intellectual properties so-called held by Apple; solely by Apple.  Really?

Now, I have no issue with inventors taking claim for innovations thought of, and developed by said inventors.  This is all cool.  And ok, to be honest, sure, some could see Apple's side of the argument as being sound.  Apple is, after all, a leader in product and technological designs.  This is true indeed. My issue with Apple is their claims on what they call their own innovations, those developed by them directly, solely by them.  Many of these are very suspect.  Example: the iPhone.  The iPhone is an excellent example of leading innovation in product design.  Apple truly did outdo themselves here.  This is FACT.  Huh, you may say?  Wait for it....wait for it ;-)  My argument resides in the point that I think much of the technology that comprises a product like the iPhone, could really, and should really not be considered as having a sole inventor.  Much of these innovations and ideas that comprise said technology are widely researched, tested, and adopted by a wide variety of other products and they continue to be such.  So I ask this; where is the line drawn? ..or where should it be drawn? 

An example: Kleenex.  As many of you know, Kleenex is a house hold brand name leader in snot rag technology (among other uses). You know it, the brand, I know it well and I'm sure you've used some variety of kleenex-based product at least once in your lives.  Kleenex has become the defacto, universally accepted name of snot rags alike. Truth be told, the design of Kleenex-inspired products is universal as well, regardless of brand name or otherwise.  Now, my point is this.  Let's say, for instance, we have a technology like "multi-point, interactive touch screens" which was truly popularized by the iPhone device.  Now, Microsoft has researched and innovated products using said technology.  Apple too, and HEY, Google as well! Specifically to Google, they have developed this little operating system called Android and, my oh my, could it be that Apple has some valid competition FINALLY?  And even better, some valid open sourced technology!!??  Now sure, it can be said that some aspects of Android were inspired by the iPhone, sure.  But really this could be just like how I am inspired by Eric Clapton or Neil Young when I play the guitar.  Could it be that if one of my songs sounds similar to Neil Young, not an exact replica, but similar, could Neil knock down my door and smash my guitar?  Ha!

Back on point.  Like Kleenex, can one really lay claim to every occurrence of such instances without monopolizing the system?  I say NO!  Now, with technologies such as touch screen technology becoming more mainstream; more the defacto way of developing interactive designs, I say to this as well, NO!

So with this I say to you Apple, oh Apple, Apple oh Apple.  Fuck you!  Fuck you Steve Jobs!  Have you not forgotten how Xerox in the mid-70's "inspired" you?  I don't care if you are the CEO of the decade.  I truly hope the good guys win this battle and that Google, HTC, and every other company you try and pull this bullshit on, puts you in your place; illuminates you a little, and gives you a better perspective.  If this isn't a rallying cry for open source technologies, I don't know what is.  I, now more than ever, cannot wait to Ubuntu-ize my Macbook Pro.  RMS4LIFE! -tMac

Syndicate content