Where Am I?

Once again after getting fired up to write a slew of blog posts, I’ve disappeared off the face of the earth. Where did I go?

Well, it’s been an exciting year-or-so. Semester 2 of 2012 was very busy, and myself and various teams finished off various assignments for university. The large team software project (for which we were using agent-oriented programming and the Prometheus design methodology) went very well, and we won the award for best large team project at our expo night (out of three teams, but still).

Then I got to have a short break over Summer, but somehow snuck into being accepted for an internship with Google, and since Sydney was full, I got upgraded to the Googleplex in Mountain View! This is now without a doubt the highlight of my resume, and it was an enormously educational experience, especially since it was also my first ‘real’ overseas trip (that is, excluding New Zealand). I was working on upgrading an existing internal web application, which was definitely relevant to my interests, but unfortunately I can’t show anything off.

One of the most valuable things I learnt from working at Google is that I don’t want to work at Google. Yet. Without a doubt, it lives up to all the amazing stories you’ve heard and it’s perhaps as close to corporate paradise as a software developer will find, but I’m not at a point in my career that I want a corporate paradise. Despite all the free food and events and amazing people, I spent most of my time sitting at a desk writing code for other people. I learnt that I want to write code for myself; that I want to work on projects that are of total personal interest to me, and I want to direct their development.

Basically, I want to run a startup. So that’s what I’m going to do.

I’ve been watching Steve Blank’s How to Build a Startup course on Udacity, and it feels right. It feels like the kind of thing I want to do, and sits outside my comfort zone in the right way. I’m at a stage of my life that is ideal for taking this kind of risk: I have no job commitments, no family dependents, enough money to survive on, and most importantly, a project at uni with a good team that is starting to get off the ground, and the project owner is very keen to spin it off for commercialisation. I think it has real potential, so I’ll be working full-time next semester to build out the foundations a little more funded by a convenient government grant. It will be at least a year before it’s ready for sale, but I’m cautiously optimistic, and it deserves at least six months (of paid work!) to give it a go.

On top of that, I’m planning on reviving Buffex from its slumber on the side. This has come about for two reasons: I’ve been playing with Google’s Dart language and I’m liking it a lot; and a friend found the holy grail of open financial data sets on Quandl. That gives me everything I need, and it’s already coming along quite nicely. My goal is to launch an MVP for that in about 3 months of part-time work, though I haven’t done any scheduling yet, and that’s probably infeasibly aggressive. But I’ll definitely try to keep a record of the development lifecycle, as this is as likely as ever to be my first real self-driven product to come to market (with a business plan, anyway).

So I should be back on the air, but I won’t make any silly promises. I’m blogging because I know it’s a good habit to express one’s life story somewhere, even if nobody reads it. If nothing else, I’ll be back to read it in 50 years. Hopefully I didn’t let you down, future-me!

Hello Again, World!

Done! Exams are done! University is done! It’s all over! I’m FREE!

Now I can finally get to work. There’s so much to do! I suspect I’ll be a little bit giddy around here for a week or so, since I’ve been looking forward to fixing this place up for some time now. So welcome everyone, and if it looks like a bit of a ghost town, look again in a week. Below is a list of the things I’ve got planned for the next few months:

  • Write some more posts about things!
  • Fix outstanding pim2smsbr bugs (especially the character conversion errors/warnings)
  • Move piemaster.net from WordPress to Drupal, and go nuts with customisation
  • Particularly get a support forum integrated with the site. WordPress kinda sucks at this. The default Drupal forum is a bit ugly, but Drupal is a programmer’s framework. It gets the job done right.
  • Clean up all the site content
  • Release the new version of Forgbook that my team and I developed as a university project (then extend it to the moon)
  • Write up some more detailed information about the other projects I have lined up
  • Actually start on some of those projects!
  • Revisit Jario and clean it up a bit (related to one such unannounced project)
  • Just mess around and experiment with things!

My future is currently undecided. Whatever I choose to do I have a few months off now to play around with proper, focused software development, and after that I will either find my way back to uni to take a Masters of Software Engineering, or take a bit of a break and keep exploring the wonderful world of software.

I kind of want to build a startup out of one of these ideas, just for the experience. I don’t expect to become a millionaire overnight, or even a thousandaire over a year, but developers live to have their work seen and used by others, and for that to happen that work has to be a tight, focused application that solves a problem and solves it well. I know I can do that given enough time, and I can only imagine what the journey will bring with it.

First however I will get out of bed and have a shower, then diagnose which part of my PC exploded (literally) a couple of weeks ago. Thank you all for your support, whether or not it was deliberate, but even just having people view the site definitely keeps me going. There’s so much to do, and I’m going to make it happen. I hope you can get some value out of what is to come. Cheers, and Happy World Toilet Day!

Where Is Forgbook Going?

Of my large (and still growing) handful of projects that I’d like to be working on right now, Forgbook is taking up most of my attention. Hopefully I can get some kind of super-early release out in a few weeks, but until then it’s worth noting a few shifts in focus and philosophy.

As much as I love the Web, I find it hard to submerge myself in Web development due to the chronic pains of browser incompatibility, and perhaps the need to be constantly responding to user experience. Once a product is released, I feel an obligation to keep it updated, which can at times conflict with a desire to put a project to the side for a while. It’s much safer in term of user response to work on a project privately until it’s complete and polished before releasing it rather than releasing pre-alpha kind of work and iterating consistently all the way through to a final release. I guess I value my flexibility pretty highly, because after all this work is effectively my free time.

Forgbook is (or will be) my largest, most ambitious project in functionality terms, and I believe it will be of the most value to myself and others, so I want to get it right. I’ve been thinking about what I want it to offer for some time now, and I’ll be updating the project page with more details as I solidify them. From a technology perspective however, the interesting decision I’ve made is that I’ll be switching from a relatively unambitious attempt to combine Flex and PHP to a Web-native Django application leveraging the Dojo JavaScript toolkit for the more flashy UI components. This means however that I have to familiarise myself with the environment Django offers; it’s immediately clear that it’s extremely powerful and scalable, but the decoupling that is its strength results in a variety of idiosyncratic idioms that will take some time to adjust to.

Why the switch? One of the requirements I’ve come to be very passionate about is making Forgbook accessible from any common device – PC, smartphone, tablet, perhaps even consoles – so that it feels more like an encouraging companion rather than a chore you must log into every day. This is best achieved using a native Web interface (HTML, CSS, JS) over something requiring a plugin (Flash, Silverlight), as it should at least be accessible by any device with a Web browser, in the scenario that I don’t/can’t customise an interface for that device. It would be suicide to jump into creating a sophisticated Web application without a framework, and my love for Python (and mere tolerance of PHP) combined with the popularity and support for Django make it a perfect choice. The integration of Dojo via Dojango is a big bonus too.

I’ll document the progress I’m making with Django in the next couple of weeks, and hopefully get a stripped-down-but-working version (basic user and task management) out in the wild before March. From there, I’m hoping the development efforts will feel more rewarding, and I’m sure there will be many more fun things to handle (feedback and reflection followed later by advertising and analytics). I’m looking forward to it as much as ever.

P.S. If anyone can think of a quality name for a sophisticated event/task management application (Forgbook is very much a working title), let me know (comment or contact). If I like it enough that I decide to use it, I’ll be happy to give you free access to pretty much anything I release forever. Hopefully one day that’s worth something significant.

So What’s The Plan?

So it’s now well into February, when I’m supposed to have transitioned out of IBM mode and into personal progress mode. To an extent I have, but it’s going entirely undocumented as it always has, despite the whole point of this site being to remedy this situation.

So it’s time to reassess what the objectives of this site are and start using it properly. Why does it exist?

  • To maintain a homepage/repository/portfolio of my various projects.
  • To facilitate posting about development of and updates to those projects, for my own reflection and the interest of any interested parties.
  • To encourage publishing of articles providing information that I’ve picked up through my experiences that may be of use to others.
  • To generally keep track of the progress of various aspects of my life, primarily those relevant to the above points (e.g. what I’m studying/working on/taking an interest in).

These objectives fall approximately into the two categories of content hosting for sharing with others, and reporting developments for posterity and reflection. The former is purely for my own amusement until I start publishing things worth sharing, but the latter can start generating benefits immediately.

As such, I intend to start publishing a lot more short and succinct blog posts about the goings on behind the Piemaster scenes. These will mostly be filed under ‘Personal‘, so feel free to ignore them if you believe that’s where they should stay. I believe Forgbook is going to be of great value for organising my life, but until then the reflection should help focus my attention.

So if you just stumbled across this site for no real reason at all, and you have no idea who I am, and you read this whole post for wont of something better to do… you are possibly the only person on Earth to have done so. Who knows, with odds like that you may even choose to follow the site for the next week or so just to see what happens. It won’t be flashy, but I’m an independent human being and I’ll try to have something even a little enlightening to say. Either way, wish me luck.

The Apps Cometh

So I figured some things out, and I can now host all my stuff on here! Unfortunately WordPress doesn’t want to let me embed things in pages, but I can happily store them just off to the side, leaving them accessible from a nice, static URL. I’ve quickly put up two examples to show them off before I get down to business, which you can see in the Projects menu above, but just briefly:

Forgbook (working title) is my primary project at the moment, though it doesn’t get nearly as much development love as it should. It’s the result of many factors, the main one being when I decided I had stop leaving loose ends everywhere and actually DO those little things that make the big things come together. It is in essence a glorified to-do list (especially in its current form), but it has a very exciting future ahead of it. It’s still in a very early alpha stage, but it’s at least fairly usable. Check out the version roadmap for a preview, and hit up the feedback form to land yourself in the credits!

Treetris (also working title) is something new that I came up with yesterday while waiting at Parliament Station. The idea is a survival-strategy game based on growing out tree branches, inspired by Tetris and another game I failed to coalesce a while ago. I want to keep it simple in rules and mechanics, but have a bit of depth in how it’s actually played. The Java applet I’ve got up is just a couple of hours of work and is more of a teaser than a preview; it’s just a tree that keeps growing out until your computer grinds to a halt :). It should give you some idea of what I’m going for though, and me something to work off.

It’s exciting enough at the moment to just see these two out in public on a decent web host, but there will be plenty more to come now that the foundations have come together. If you’re even a little interested in any of this, you can subscribe to any (or all!) of the RSS feeds up the top-right corner there to hear about future developments, and I promise there will be plenty. I rather like this site, and I’m itching to dump my mind on it as soon as I get the time!

So We Row

A couple of things before I run off to bed again.

The About page has a little more info on what to expect. In short, just about anything, so long as it’s interesting, at least to me. Or technical. Most things probably tend not to be both to you.

One of the pillars of the personal stuff for a while is going to be The 7 Habits of Highly Successful People. I’ve been reading it for only a few days, but it’s saying exactly what I need to hear in exactly the right way. I’ll be reviewing each of the habits in time, but the second (which I’m just digging into now) is to “start with the end in mind”, to know exactly what you want in the long run and to work with that in mind every day. It seems so obvious, even cliché, but who really does it? He makes clear things like the futility of misdirected efficiency, and the universality of it; its application to personality, parenthood, and organisations. It really seems like one of those chapters that’s going to spawn a lot of jotted notes and sketchily-imagined futures.

I’m also starting to feel out which will be the first habits to be locked in, and we’ll see how they go. Healthy sleeping, eating and exercise patterns, and general proactivity to get the little things done. It’s all about building up a string of small, private victories. Private victories must precede public victories. There are no shortcuts to the Character Ethic. It holds a long-term focus, like a sensible investment, and has the same kind of accumulative, compounded returns. Life is always going to be work, so living smart is working right and having fun doing it.

Welcome To The New Piemaster

Hi! I’m Oliver Lade. You may remember me from such sites as http://piemaster.net/, my dump of Uni work, or a certain other site that no one that knows me seems to know about, despite it being by far the largest. It is the first of those, my old personal home page (more personal in that it was practice coding a web site from the ground up rather than the content on it), which is of most interest, since that is the site that is being shifted over here. “Here” refers to a new account with NearlyFreeSpeech.net, an eminently reasonable hosting provider that charges for usage, making it especially cheap for a small site such as this, so a big thanks to them.

As fun as the old Piemastery was, I simply don’t have the time to keep extending the primitive functionality, and I needed a site I could use easily. Why did I need such a thing? The reason is one I can’t discuss in detail right now because of the reason itself. Also because I don’t entirely know myself what that reason is. Ultimately, I plan to use this site for hosting various bits and pieces that I develop, but I also intend to make good use of the blogging strength of WordPress to get a few varieties of idea out of my head. I don’t expect anyone to read them, but I’m happy to be talking to myself, because then it just becomes a journal which is helpful enough in and of itself.

Some people may read some thoughts if I point hard enough, but at the very least, this will become my new staging ground for web development. The first item you will see is (a link to) (a properly-hosted) Forgbook (alpha) (working title), but more things great (hopefully) and small (definitely) will follow in its wake. Hopefully I can centralise the development coverage of these programs and applications with some project blogging, as well as clear my mind with some more personal content. How reality unfolds may well be a different story.

For now, it is the time for the sleeping. I’ll be back with more when there is more to be back with. There’s a lot of work to do around here, and I am honestly looking forward to all of it. See you when I see you.