OAuth, Magento, Cookies, Ubuntu and Time

After upgrading my VMWare host (and some Ubuntu updates at the same time) I started noticing some strange behaviour on my Magento platform in QA. I just couldn’t login with my regular test user account. After clearing cookies on the browser, Magento started redirecting me to it’s “Please enable cookies” page. Boom! Nothing else had changed between stopping work on Monday and then resuming work on Tuesday. Frustrated, I simply created a new account and carried on using the new test account. That soon bombed though; mid workflow…

Now as if that wasn’t mysterious enough, my Twitter OAuth integrations started falling over. I really thought it was Monday- but it was actually Thursday. Not less than 45 minutes ago, a work items which had passed QA and committed to the repo was now suddenly failing. At the same time, my Magento session expired and I couldn’t login again. Wait a minute…

Both the OAuth error message and the Magento error were pointing to clock-synch issues. Could it be? Short answer: yes.

Now NTP is set to run automatically on the Ubuntu machine, but that wasn’t cutting it somehow. So i stopped that daemon, run ntpdate manually, and walah! Zee problem vas gone. Turns out my server was 5 minutes behind schedule.

So somewhere between the host clock, the VMWare time synch mechanism, the Ubuntu (11.04) updates and the NTP daemon- i’m still losing time.. somehow. I haven’t tracked down the culprit specifically, but at least the cause correlates with the symptoms and the appropriate fix is related to and resolves the issue.

The hunt will continue once this current story is completed….


Get Ubuntu

This is more of a shameless advertising plug than anything else- a departure from the usual theme of posts- but when you really like something, you can’t help yourself but just say *something* about it. That said…

I’ve advocated Ubuntu for a while now since I took the leap myself away from the restrictive environment which Windows had become*. When I first jumped, there were minor issues here and there but, with a bit of geek, the problem was solved. Since then, the OS has grown into an incredibly rich and useful OS with no issues (at least that is, not for a while). It does just work.

The latest release has been even more comforting and in particular, the netbook remix version is beautiful! I also work a lot on Mac and can appreciate an interface that is simple and intuitive and lets you get on with the job without getting in the way. UNR rates as one my most favouritest (sic) OSes. I can’t work (as in code a lot) on that platform just yet- but the way the services and technology is moving, who knows πŸ™‚

So, don’t delay, go Get Ubuntu. Now. Really.

Oh, and if you’re worried about your “office” productivity and spreadsheets and word processing, don’t. OpenOffice is pretty good. No. Very good. No. Darn good! I’ve managed to use some pretty sophisticated and involved spreadsheets (created in Excel 2007) on OpenOffice 3.0 and there was some minor trickery involved regarding linked spreadsheets, but after sorting that out- total freedom!

Incidentally, this quiet article had more good things to say.

* I’m not really an MS hater, so try not read between the lines too much πŸ™‚ I still do a lot of work on the MS platform in .NET and enjoy using the tools i have there, mostly because i’m very familiar and comfortable with them. It’s just that the client OS itself though doesn’t offer me any extra value for the extra price i have to pay for it- plus it’s slower on the same spec machine.


A Dev Environment with Trac+Subversion

Setting up development environments is something you do once in a while- hopefully. And over time, you tweak different areas and add in bits and pieces here and there and it evolves. Nicely. And then you get to do it all over again πŸ™‚ But then you got to go back a couple of months/years and look at it all over again. Thank goodness for tutorials!

Incidentally, another good reason to make the effort to document (read blog) that learning, or even just link that learning into your own blog. You never know when you gonna need it again…

Setting up Trac and Subversion on Ubuntu

This is probably about the most comprehensive and easy to follow guide i’ve come across so far. It has all the basic necessities to serve as both a refresher and get you up and running quickly. There is one small “typo” but you should spot it quickly if you’ve done this before. It refers to the root web folder for the trac setup.


Ubuntu USB

They have a saying with Ubuntu: “It Just works” and freak- it’s true, especially with the latest release 8.1 (Intrepid Ibex).

My goal was to install Ubuntu Server edition on a machine that is really, _just_ a server. No shmancy graphics card, no CD-ROM.. wait. No CD-ROM!? How do you install server software onto a *disconnected machine with no CD-ROM? USB.

Now previously, the ability has always been there, and you had to download this and do that and change this- since you were doing something out of the ordinary (at least that is, back then it was). So they simplified the whole process with Intrepid and made it ordinary.

Sooo.. on a desktop machine (an existing installation of Intrepid) select to create a USB disk; locate/select the server ISO (or CD if you’ve burned the ISO onto CD already); select the USB device you want to use and the rest is a progress bar.

Now you can boot with the USB device and install the server OS onto the machine of choice. It really does just work.


Open Source on Launchpad

A synergistic moment if there ever was one.

I love my OS. I don’t dislike my XP. It’s been good to me (and continues to be) but i *really* enjoy working on my ubuntu. And i’m still discovering things about it, which is half the fun right there. And as a result, i was introduced to launchpad.

And i really enjoy working on launchpad. I don’t dislike sourceforge. It’s been good to (and continues to be) but i *really* enjoy working on launchpad. And i’m still discovering things about it, which is half the fun right there. (Codeplex hasn’t really shaken my boots much in any form or manner yet).

I love programming. I don’t dislike .NET. It’s been good to (and continues to be) but i *really* enjoy working with Ruby, and in particular, with Rails. And i’m still discovering things about it, which is half the fun right there. And in all my discovery and learning, it was about time to bring the 3 together, in a practical way which helps me be more productive, first and foremost in keeping a tab on my new adventure as an entrepreneur.

Introducing… timesheet. Nothing new, nothing too fancy. It’s Rails, developed on ubuntu, using *nix editors and IDEs where i could scour them, and hosted on launchpad. It works, it’s functional (and i can even port it sans changes to my XP environment) and readily available. Probably has enough bugs (certainly more roadmap expected) to keep me busy exploring features in launchpad, but at least it looks marginally better than my excel spreadsheet (lol)


MATLAB R14sp3 On Ubuntu 7.04

A couple of things to be aware of if you’re doing this installation, which i discovered through trial and error πŸ™‚

The machine id used for activation is based on the MAC address of eth0. On my machine, for example, my active interface is primarily the wireless card which is set as eth1. Hence, no machine id available for activation. How to fix?

bryan@noah:~$ cat /etc/iftab
# This file assigns persistent names to network interfaces.
# See iftab(5) for syntax.

eth1 mac 00:00:00:00:00:00 arp 1
eth0 mac 11:11:11:11:11:11 arp 1

where 00:00… and 11:11… represent your actual MAC addresses obtained by ifconfig.

My wireless card was eth1, so i simply switched this around so that my wireless is now eth0, rebooted and i now have a machine id with which to activate MATLAB.

Second issue was an error to the tune of: “version GLIBC_2.0 not defined in file” when trying to use the Symbolic Toolkit, particularly. See the MathWorks Technical Solution for more information on this error. The steps they outline there didn’t work for me (it is for Red Hat afterall), but what did work was copying the (provided by MathWorks) into your matlab/glnx/bin directory. See discussion here (in German).

Success. Incidentally, i’m using MATLAB because my university wants me to use it, but otherwise if you need something equivalent in the OSS sphere, try Octave. πŸ˜‰

Minimum Computing Power

There is a lot of hype about computing power, technology and what we _really_ need to everyday compute. We find a similar push with cellphone technology too… but what exactly do you really need?

I’ve just finished setting up Feisty… i am impressed. It really does just work. Out of curiousity, i ran a quick check to see what kind of computing power something funky like Feisty would need… and then compared to the current new generation in the Windows world…

Ubuntu Minimum Requirements
(the recommended minimum)
500 MHz x86 processor
192 MB of system memory (RAM)
8 GB of disk space
Graphics card capable of 1024×768 resolution
Sound card
A network or Internet connection
Note: All 64-bit (x86-64) PCs should be able to run Ubuntu. Use the 64-bit installation CD for a 64-bit-optimised installation.

Vista Minimum Requirements
1 GHz 32-bit (x86) or 64-bit (x64) processor
512 MB of system memory
20 GB hard drive with at least 15 GB of available space
Support for DirectX 9 graphics and 32 MB of graphics memory
DVD-ROM drive
Audio Output
Internet access (fees may apply)

Uhuh.. not pretty.

Ubuntu Adventures

So far, everything’s going well. Ubuntu Edgy [Feisty coming soon] is installed and updated. Wrapped my head around keeping my computer updated and how to manage it. Also, tried out Kubuntu, but opted for Gnome instead and installed Edubuntu on my wife’s machine [dual boot with XP Home]. And it’s got everything you need.

Come to think of it, our computing needs [home users] are actually quite simple:
Email, web browser and some document creation software. Most applications and interaction take place on the browser anyways, so the rest is.. well, a lot less complicated than it’s made out to be. I know a lot of folk will disagree on that, but of all the thousands of applications we have at our disposal, a very small percentage are actually required.

And i think that’s part of the Ubuntu appeal. It has everything you need to compute. Off the bat. And then of course, you can go wild and install a thousand applications, if you really need to.

For Edgy and Dapper [spread over ubuntu, edubuntu and kubuntu] installations, instead of fighting to get WPA-PSK working with 4 different wireless cards, i changed the router to WEP with a MAC-filter. The path of least resistance πŸ™‚ And it works like a charm. Feisty apparently has some added support in the WP-PSK direction, so we’ll look at that pretty soon…


How The Other Half Compute

i’ve been a Windows junkie for a long time now. Made my living living, eating and breathing Windows. From ’98 to XP, and now Vista, i been using, coding, configuring, patching, coding [did i say that twice ;)] everything Microsoft. Funny though, my roots in computing go back to C, Borland nogal. Anyways, Microsoft-related work paid quite well, so it’s what i did- and continue to do. However….

Because i work within the education arena of software, it’s only inevitable that i’d come across a project like edubuntu, and from that, get infected by a whole other world. and slowly, but surely, things are getting infected, in a good way πŸ˜€

But the challenge remains.. how do i migrate into a linux world? And why even bother would be a good challenge to pose… indeed why? Equally inviting, why not? More on that later.

First step, replace XP with Ubuntu as the primary OS for all regular “work”. Writing documents, emailing and IM, are OS-independant tasks. Developing, so so much.. but we’ll see [he says with a glimmer in his eye].

Fortunately, and i do mean fortunately, most of the implementation tools we use to develop are non-ms. Our choice IDE, as an example, is SharpDevelop. And interestingly enough, it won hands-down as IDE of choice against VS.Net [Express Edition]. It’s just soooo much more productive πŸ˜€ And in case you’re wondering why not the full fledged VS.Net product: we compared apples with apples and the apples in this case, was $.

Hey! We live in Africa. We certainly cannot afford them shiny-looking price tags.

The adventure begins….

nogal is, as far i know, purely a south african term pronounced nau-chul, with the ch being closer to the classic Scottish ‘ch’ as in loch ness that anything else. kinda like you’re clearing your throat. anyway, it resembles the english equivalent: nonetheless.

New Territory

for a .net “junkie”, migrating technology skills can be quite daunting- well, that is for me at least. after too long a delay, i finally decided to start shifting some of my stuff across to Linux. i like the community drive behind Ubuntu and so… here i am. I guess there are lots of reasons for finally getting going with this… thing is, i’ve always enjoyed having an eclectic knowledge of sorts about technology in general and after so long into .net, it feels like i have an ecelectic .net grasp of all things microsoft. not that it’s a bad thing, it’s just not what i _really_ wanted πŸ™‚ anyways, it’s also hard to be technology-agnostic and objectively equipped to recommend a strategy you can actively be involved in when the last line of Java code you wrote was… erm… *then*. and as great as some of the .net stuff is [and 3.0 and upcoming LINQ… oooohhhh] i can’t help but think i could be _selling out_ if i don’t make a decent effort to stay even half-decently current across the board. now if i can get my wireless card to work, i could start blogging from my new desktop πŸ™‚