<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 <title>David Bolton Strikes Again</title>
 <link href="http://davidbolton.net/blog/atom.xml" rel="self"/>
 <link href="http://davidbolton.net/blog/"/>
 <updated>2012-05-14T21:02:02+00:00</updated>
 <id>http://davidbolon.net/blog/</id>
 <author>
   <name>David Bolton</name>
   <email>david@davidbolton.net</email>
 </author>
 
   <entry>
     <title>The Fashion Industry Stripped Bare</title>
     <link href="http://davidbolton.net/blog/2012/05/15/stripped-bare/"/>
     <updated>2012-05-15T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2012/05/15/stripped-bare</id>
     <content type="html">&lt;p&gt;A few weeks ago there was a fantastic &lt;a href=&quot;http://afr.com/p/afrmagazine/the_hume_report_the_fashion_industry_nmpwLAe6A4B0EqnJ3n4eUJ&quot;&gt;article by Marion
Hume&lt;/a&gt;
in the AFR Magazine about the state of the fashion industry, covering both the
local and international angles. Of particular interest was Hume's
acknowledgement of the impact of ecommerce in the Australian market.&lt;/p&gt;

&lt;p&gt;Highlights from the article include the anecdote around why models in old
Australian magazine shoots had to wear basic sandals (because Australia had a
very limited to non-existant supply of fashion-forward shoes), and the sidebar
on online shopping, which gives a little insight into the emerging mindset
from the point of view of fashion insiders:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Oroton CEO Sally Macdonald, an early adopter who moved back from the US to
find we were still in the age of dial-up, says it wasn’t just lack of
broadband width that lead to the slow shuffle online. She cites sexism,
investment here being so male-dominated. She claims men simply failed to
understand the relief with which time-poor women would grab the digital
life-raft. (The world’s leading luxury e-tailer, net-a-porter, was founded
by a woman and its key investor was a woman.)&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;The takeaway from this comprehensive article is that the fashion industry is
changing rapidly and presenting endless challenges to the incumbents. The
complexity of these issues shines through: it's not just a case of ditching
everything for an online approach, but rather formulating a response that
gives a brand with a significant investment in the offline world the tools to
also compete in an online market too. For Australian companies, the most important
action is to create an online presence and begin learning. Delay learning at
this stage, and a company sets itself up to be chasing the rest of the
industry in a relatively short time frame.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>StyleTread adds funding</title>
     <link href="http://davidbolton.net/blog/2012/03/28/StyleTread-gets-funding/"/>
     <updated>2012-03-28T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2012/03/28/StyleTread-gets-funding</id>
     <content type="html">&lt;p&gt;I was very interested to read that &lt;a href=&quot;http://www.styletread.com.au&quot;&gt;StyleTread&lt;/a&gt;
has &lt;a href=&quot;http://www.powerretail.com.au/news/styletread-announces-12m-funding/&quot;&gt;raised $12m in
funding&lt;/a&gt;.
Having just finished Tony Hsieh's book &lt;a href=&quot;http://www.deliveringhappiness.com/&quot;&gt;&quot;Delivering
Happiness&quot;&lt;/a&gt;, which
essentially covers his early entrepreneurial career, his leadership of Zappos
and his managerial philosophies, it's hard not to look at this large funding
number and Australia's limited market and think that the investment overwhelms
the opportunity. As Power Retail notes, overseas expansion could be on the
cards, because when you consider that Australia is still coming to grips with
a mail order culture, the opportunity locally just doesn't seem that
compelling. Noting that it took Zappos 10 years to reach $1 billion in
revenue, and Australia has 1/15th the population, it would seem to be
an ambitious investment.&lt;/p&gt;

&lt;p&gt;As a sidenote, I'm also curious about Mark Rowland calling himself &quot;Chief
Happiness Officer&quot;. Even for a company that is clearly just a local adaptation
of an American success story, that seems a little too derivative. Surely we can
do better than just mimicking?&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>J.Crew comes to Australia</title>
     <link href="http://davidbolton.net/blog/2012/03/28/J-Crew-In-Australia/"/>
     <updated>2012-03-28T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2012/03/28/J-Crew-In-Australia</id>
     <content type="html">&lt;p&gt;The &lt;a href=&quot;http://www.powerretail.com.au/news/fashion-label-plans-australian-invasion/&quot;&gt;news hot off the
wire&lt;/a&gt;
is that American label &lt;a href=&quot;http://www.jcrew.com&quot;&gt;J.Crew&lt;/a&gt; will now be delivering to Australia. What is
hidden is that while J.Crew has partnered with &lt;a href=&quot;http://www.shopstyle.com.au/&quot;&gt;ShopStyle&lt;/a&gt;, the international style network
with an Australian arm, for their local presence, a user could just go
straight to the J.Crew site and order directly from there. Indeed ShopStyle
just shows the product, but the ordering and checkout all occur on the J.Crew
site itself.&lt;/p&gt;

&lt;p&gt;Still, it's a great signing by ShopStyle - they add a household name brand that is
sure to bring traffic and sales to the site, while for J.Crew the partnership
is an easy way to bring their products to a new audience via ShopStyles
established membership base.&lt;/p&gt;

&lt;p&gt;According to Power Retail, J.Crew will now be available in 107 countries, and
even for a large organisation with a sophisticated web presence like J.Crew,
the international aspects of ecommerce would have been difficult to navigate.
Partnering with an ecommerce expert in ShopStyle, with a global presence,
significantly drops the risk.&lt;/p&gt;

&lt;p&gt;J.Crew began in 1983, and since 2003 has been run by Micky Drexler, who once
had astounding success with Gap. But probably just as critical for their
current industry standing is the creative direction of &lt;a href=&quot;http://nymag.com/fashion/11/fall/jenna-lyons/&quot;&gt;Jenna
Lyons&lt;/a&gt;, a constant media
fixture for her style and personality. Will J.Crew achieve commercial success
in selling to Australia? One would think that with the connected consumer
being well aware of popular culture in the USA (and Michelle Obama is an often
cited J.Crew fan) that there'll be little trouble in luring the Australian
shopper.&lt;/p&gt;

&lt;p&gt;J.Crew's own online store is a fully featured and quick, and for shopping from
Australia, it is a seamless shop and checkout experience -- which underlines
that the only reason for the ShopStyle partnership is probably to utilise
ShopStyle's member networks in each of the ShopStyle countries.&lt;/p&gt;

&lt;p&gt;For brands that are well known in their home countries, it seems that it's a
growing trend to partner into new territories. Expect more partnerships in
in 2012.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>A brief overview of Australia's retail fashion ecommerce sector</title>
     <link href="http://davidbolton.net/blog/2012/03/15/australian-ecommerce-landscape/"/>
     <updated>2012-03-15T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2012/03/15/australian-ecommerce-landscape</id>
     <content type="html">&lt;p&gt;It is well acknowledged that Australia is playing catchup in the area of
ecommerce. While the US and the UK have been steadily building since not long
after the year 2000, Australia's retail ecommerce industry has really only started
taking off in the last three years (as an aside, I'm defining &quot;taking off&quot;
broadly: a vital and growing number of small retailers, along with advanced
offerings from big players.)&lt;/p&gt;

&lt;p&gt;Over the last two years Australia has seen the launch of &lt;a href=&quot;http://www.westfield.com.au&quot;&gt;Westfield's
ecommerce offering&lt;/a&gt;,
&lt;a href=&quot;http://www.myer.com.au&quot;&gt;Myer&lt;/a&gt; join the party and &lt;a href=&quot;http://ebay.com.au&quot;&gt;eBay&lt;/a&gt;
bring to fruition their long held plan to shift to a more retail focus. More
recently, David Jones has made &lt;a href=&quot;http://www.heraldsun.com.au/business/david-jones-hopes-for-10-per-cent-of-sales-online/story-fn7j19iv-1226280513215&quot;&gt;bold
claims&lt;/a&gt;
about where its undelivered ecommerce store will end up. Meanwhile, there's a
host of smaller online retailers such as
&lt;a href=&quot;http://www.surfstitch.com&quot;&gt;SurfStitch&lt;/a&gt;, &lt;a href=&quot;http://www.thegrandsocial.com.au&quot;&gt;The Grand
Social&lt;/a&gt; and &lt;a href=&quot;http://www.mycatwalk.com.au&quot;&gt;My
Catwalk&lt;/a&gt; that are showing their agility and
are proving able to connect with young consumers ready to spend online.&lt;/p&gt;

&lt;p&gt;When we compare to the markets in the UK and US, however, we see that the
Australia is relatively undeveloped. Retailers are still
learning the right way to present and price product, the ins and outs of
customer service and how to market their sites. Australia doesn't have the
same pervasive and decades-long mail order culture that the US and UK have, so
there are many retailers learning on the run. But regardless of retailer readyness, the
consumer is most certainly ready, to the point that Australia has been
reported as the &lt;a href=&quot;http://www.theage.com.au/business/online-fashion-good-fit-for-buyers-20110314-1bug2.html&quot;&gt;third largest market&lt;/a&gt; for ASOS's UK operations (which has led
to &lt;a href=&quot;http://www.asos.com/au/?r=2&quot;&gt;ASOS opening an Australian operation&lt;/a&gt;).
Looking internationally, &lt;a href=&quot;http://shop.nordstrom.com/&quot;&gt;Nordstrom&lt;/a&gt; has a sophisticated
offering (with reported plans to spend $140 million on ecommerce in 2012), and
delivers to Australia. Obviously Australian retailers will not be able to
match the investments of larger overseas counterparts, but nevertheless they
are competitors with clout, and with orders deliverable to Australian capital
cities in a matter of days, the tyranny of distance no longer applies.
Australian retailers must find ways of improving their showing, and connecting
uniquely with their local market. For instance, Sydney culturally has a
beachside lifestyle that Nordstrom and others are unlikely to target.&lt;/p&gt;

&lt;p&gt;So, how should Australian retailers respond? Firstly, they need to acknowledge
the market and realise the urgency of establishing themselves. The market is
proven, and delaying just allows competitors to establish themselves and learn
the necessary lessons. Next, the technological platforms must be properly
developed. Whether the retailer is large, as with David Jones, or a small pure
play online retailer, cutting corners on the technology may hamper growth and
addition of new features. Technology selection is an involved topic, and
concerns much more than software, with a chief concern being the availability
of local expertise. With commitment and technology in place, the next hurdle
is either finding ecommerce savvy product and marketing resources, or
ingraining a culture of learning and experimentation to be able to rapidly
develop and iterate the offering. Ecommerce is changing
rapidly, and if retailers are going to be competitive, they need to realise
that trying new approaches, failing, and readjusting are crucial.&lt;/p&gt;

&lt;p&gt;It's too early to say who the winners in Australian ecommerce are likely to
be, but it is clear that some of the best approaches for the sector have been
from the rapidly adapting smaller players, and that the larger retailers can
only rely on brand for so long.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>John Backus on the Von Neumann style</title>
     <link href="http://davidbolton.net/blog/2011/12/04/backus-and-the-von-neumann-style/"/>
     <updated>2011-12-04T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2011/12/04/backus-and-the-von-neumann-style</id>
     <content type="html">&lt;p&gt;Now I'm in a post-Masters state (see
&lt;a href=&quot;http://davidbolton.net/blog/2011/12/02/reflections-on-mbt/&quot;&gt;earlier&lt;/a&gt;), I'm
spending some time reading formative computer science papers, starting with
lists from Michael Feathers and Mike &quot;Fogus&quot; (is that a pseudonym? I couldn't
tell) outlined here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.objectmentor.com/articles/2009/02/26/10-papers-every-programmer-should-read-at-least-twice&quot;&gt;10 papers every programmer should read at least twice&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.fogus.me/2011/09/08/10-technical-papers-every-programmer-should-read-at-least-twice/&quot;&gt;10 technical papers every programmer should read at least twice&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I've read a bunch of these now, and yesterday's menu included John Backus'
Turing award paper &quot;Can Programming Be Liberated from the von Neumann Style? A
Functional Style and Its Algebra of Programs&quot;. I didn't know much about Backus
coming to this work, but I was familiar with the
&lt;a href=&quot;http://en.wikipedia.org/wiki/Backus-Naur_form&quot;&gt;Backus-Naur form&lt;/a&gt; of notation.
I learnt he led a team that created Fortran, and given that context the rest
of the paper became more revealing. Essentially he says that the Von Neumann
style is sub optimal because it relies on the assignment statement, and the
management of state:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&quot;The assignment statement is the von Neumann bottleneck of programming
languages and keeps us thinking in word-at-a-time terms in much the same way
the computer's bottleneck does.&quot; p615&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;This programming model, Backus argues, leads to defects and large rigid
frameworks because it turns out to be much harder to reason about. He seems
particularly heated considering assignment:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&quot;The second world of conventional programming languages is the world of
statements. The primary statement in that world is the assignment statement
itself. All the other statements of the language exist in order to make it
possible to perform a computation that must be based on this primitive
construct: the assignment statement.&quot; p616&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Given this groundwork, Backus goes on to establish his vision for a better
mode of programming, essentially functional programming without variables, a
coherent algebra, precise definitions, and applicative state transition
properties (where a subsystem has a state that is transformed via transition
rules).&lt;/p&gt;

&lt;p&gt;The paper continues with outlines of the algebra behind functional programming
systems, and to be honest, I glossed over this section. I'm relatively weak on
formal proofs, but I've read enough of them to realise I get to the end having
been thoroughly convinced they are right, while also knowing that I'll never get
that time back. In this case, I've just taken them as proven. I want the big
picture here, not the nitty gritty.&lt;/p&gt;

&lt;p&gt;The next area of interest regarding this paper was not around the paper
itself, but centering on the discussions I found. Firstly, over at
&lt;a href=&quot;http://c2.com/cgi/wiki?CanProgrammingBeLiberatedFromTheVonNeumannStyle&quot;&gt;C2&lt;/a&gt;,
the discussion starts around whether FP really provides the benefits claimed,
and that the Von Neumann style might be more approachable to begin with. There
is the important point made that the issue is mutable state, not state per se.
The last point worth noting from C2 is the highlighting of the context of the
time is relevant: Backus was writing in a time where programming was dominated
by Fortran, COBOL and Algol. This prompts us to consider his perspective if it
were argued today.&lt;/p&gt;

&lt;p&gt;Next, I visited the discussion at &lt;a href=&quot;http://lambda-the-ultimate.org/classic/message4172.html&quot;&gt;Lambda the
Ultimate&lt;/a&gt;, where the
discussion was a lot more detailed. One commenter there said: &quot;I worked with
Backus at IBM Research during 1974-1975, and I found his dedication to
exploring a 'variable-free' approach to programming both inspiring and
frustrating.&quot; Other commenters say that Backus's approach is most closely
revealed in the &lt;a href=&quot;http://www.jsoftware.com/jwiki/Guides/Getting%20Started&quot;&gt;J programming
language&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The final discussion I reviewed was at &lt;a href=&quot;http://news.ycombinator.com/item?id=768057&quot;&gt;Hacker
News&lt;/a&gt;, where several commenters
made the case that the flaw in the thinking is not taking into account the
reality of time. State happens because of time, and that is the easiest reality
for most people to relate to. Functional programming is thus harder to
understand since it takes programs out of the context of time and into
theory. Another take away from this discussion was being introduced to
&lt;a href=&quot;http://en.wikipedia.org/wiki/Dataflow_architecture&quot;&gt;&quot;dataflow&quot;
architecture&lt;/a&gt;, an
architecture that contrasts with the typical Von Neumann control flow
architecture, which was new for me. Finally, one commenter at Hacker News
mentioned &lt;a href=&quot;http://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD692.html&quot;&gt;Dijkstra's
review&lt;/a&gt; of
Backus' paper. This was particularly interesting, Djikstra has some good
points, effectively saying that Backus is claiming too much too soon.&lt;/p&gt;

&lt;p&gt;Michael Feathers concluded his summary of this paper by saying &quot;His arguments
were convincing and they helped to set a research agenda which is just now
starting to make some waves in the mainstream.&quot; Functional programming seems to
have been constantly gaining steam the last few years, and more and more
mainstream relevancy, but considering this paper was written over thirty years
ago, it seems it could be a long time till we're all taking advantage of the FP
paradigm in our professional lives.&lt;/p&gt;

&lt;p&gt;My concluding thoughts and questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If Backus was right 34 years ago, why are we not all living in a functional world now?&lt;/li&gt;
&lt;li&gt;What factors are holding back functional programming from mainstream acceptance?&lt;/li&gt;
&lt;li&gt;Could functional programming still need a critical insight to move it from
theoretically better to practically better?&lt;/li&gt;
&lt;li&gt;Is there a perspective missing? While the Von Neumann style is not as elegant
as functional programming, it is more approachable.&lt;/li&gt;
&lt;/ul&gt;

</content>
   </entry>
 
   <entry>
     <title>Reflections on the MBT at UNSW / AGSM</title>
     <link href="http://davidbolton.net/blog/2011/12/02/reflections-on-mbt/"/>
     <updated>2011-12-02T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2011/12/02/reflections-on-mbt</id>
     <content type="html">&lt;p&gt;A few weeks ago I completed my last exams for my epic &lt;a href=&quot;http://www.asb.unsw.edu.au/futurestudents/postgraduate/mbt/Pages/default.aspx&quot;&gt;Master of
Business and
Technology&lt;/a&gt;
course that I started at UNSW in &lt;em&gt;2006&lt;/em&gt;. Such a long time and I'm not sure if I'd
known how much was ahead of me whether I would have undertaken it to start
with, but at the same time I'm glad that I did. Here are some reflections on
the course, the affect on my life and lifestyle, and some of the life changes
that came along in that period.&lt;/p&gt;

&lt;p&gt;Firstly, I think there is immense value in a Masters level business course.
An MBA has apparently been devalued in some people's eyes in the modern era
(&lt;a href=&quot;http://www.smh.com.au/executive-style/management/blogs/management-line/are-mbas-overrated-20100827-13v9u.html&quot;&gt;exhibit
1&lt;/a&gt;,
&lt;a href=&quot;http://online.wsj.com/article/SB10001424053111904060604576574963215607744.html&quot;&gt;exhibit
2&lt;/a&gt;,
&lt;a href=&quot;http://www.getrichslowly.org/blog/2011/05/18/is-an-mba-worth-it/&quot;&gt;exhibit
3&lt;/a&gt;), and
while there is some merit to the main arguments here (that is doesn't prepare
people for either management or starting a business, that it is expensive
with too much opportunity cost and that they are too common these days),
these perspectives are also too shallow. An MBA isn't simply a necessary
stepping stone into management or entrepreneurial ranks. Like undergraduate
degrees, the larger value is in changes to ones thinking, in the exposure to
new ideas, different perspectives (from classmates in different industries and
with differing backgrounds), and the connections one can make. The emphasis on
critical thinking skills means that there is obvious development in that area
(just take a student in their first subject and compare to one in their last).&lt;/p&gt;

&lt;p&gt;The other perspective to address up front is the notion that replacing an MBA program with self
study is effective. The idea that a &lt;a href=&quot;http://personalmba.com&quot;&gt;Personal MBA&lt;/a&gt;
could replace a formal study program is laughable. Having read the Personal
MBA book, I believe there is some value to it (read &lt;a href=&quot;http://www.goodreads.com/review/show/137375274&quot;&gt;my
review&lt;/a&gt; of it for more of my
thoughts), however the practice of turning knowledge into critical insight is entirely
missing from the self study approach. While I guess there are those
self-studyers who can develop the critical analysis skills of someone from a formal
study program, and I came across several students in the MBT who had no place
being there, there's no doubt for the majority, formalised study will bring out
skills that self study would gloss over.&lt;/p&gt;

&lt;p&gt;The MBT program itself is a business degree in the context of technology. The
definition of technology in this case is quite broad -- definitely one of the
characteristics of the program is that it considers sustainability and the
environment as important aspects of the covered material, along with culture
and society. A further defining aspect is that the program is made to be done
part time. Unlike many MBA programs that are best done in an intensive year of
full time study, the MBT is best completed while working in the industry. So
much of the material references the context of a student's working life
(including being able to easily access people with different areas of
expertise). Finally, one could do the MBT completely online. In my opinion,
there were aspects of the online study that undermined the overall course
(including the horrible WebTeach and Blackboard systems), but these impacted
the interaction, not the material itself.&lt;/p&gt;

&lt;p&gt;To delve into my reservations about the online systems a little more, I'll
discuss both the good and the bad. First the good: being able to take part in
classes from anywhere in the world and at any time of day was fantastic, I
can't argue that. I also appreciated that having the time to consider
responses generally led to a higher level of response - people were able to
think about their input and research it to a far greater degree than if they
had been in a face to face class. The downsides of our online learning is that
the MBT program seemed incapable of understanding user experience. The
software (whether the archaic WebTeach or the barely modern Blackboard) was
always clunky and difficult to use, and the systems were often very slow.
Essentially they were nothing like modern web applications, and so while the
content was good, I felt the collaboration and sharing of the classes was
undermined.&lt;/p&gt;

&lt;p&gt;The subjects I did were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Project Management&lt;/li&gt;
&lt;li&gt;Management of Technical Innovation and Change&lt;/li&gt;
&lt;li&gt;Information Systems Management&lt;/li&gt;
&lt;li&gt;Strategic Management of Business and Technology&lt;/li&gt;
&lt;li&gt;Principles of Marketing&lt;/li&gt;
&lt;li&gt;E-Business Strategy and Management&lt;/li&gt;
&lt;li&gt;Accounting&lt;/li&gt;
&lt;li&gt;Managing Agile Organisations&lt;/li&gt;
&lt;li&gt;Fundamentals of Corporate Finance&lt;/li&gt;
&lt;li&gt;Business Law and Technology&lt;/li&gt;
&lt;li&gt;Fundamentals of People Management&lt;/li&gt;
&lt;li&gt;Development of New Products and Services&lt;/li&gt;
&lt;li&gt;Quantitative Business Methods&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Of these, I got immediate value out of the project management and marketing
subjects, which I completed early on, and in the latter stages found the Managing
Agile Organisations and Development of New Products and Services subjects
insightful. More skill based subjects, like Quantitative Business Methods and
Fundamentals of Corporate Finance aren't immediately useful to me in a day to
day sense, but are good for being able to partake in and understand conversations
in those areas. Finally, the capstone subject of Strategic Management of
Business and Technology was crucial in bringing many of the learning areas
together.&lt;/p&gt;

&lt;p&gt;Now, over the years my circumstances changed many times while doing this
course. Between starting and finishing I was married, bought a house, had my
first and second children and changed jobs at least five times (depending on
how you count my freelance/entrepreneur period). In terms of study and
lifestyle, the years when I didn't have children were easiest, without a
doubt. Time moves at a different pace when you're mainly concerned with
yourself. The flip side of this is that I had no idea of what efficiency meant
before children. So while I potentially had all the time in the world, I was
fairly wasteful of this time too. Once children came along, I became vastly
more focused and able to churn out good course work in limited time. The
benefit of changing jobs was having a good deal of source material for
relating to my studies. When you have a number differing experiences to draw
on, relating study to work allows more meaningful learning, in my opinion.&lt;/p&gt;

&lt;p&gt;Finally, I was able to meet some inspirational people during my studies.
These include the mother of five finishing her third degree and already
planning her next, the foster parent who mixed study and a demanding social
role, and all the people from completely different professional backgrounds to
myself.&lt;/p&gt;

&lt;p&gt;So, the natural question at this point is: would I start an MBT today, knowing
what I do now? The answer is yes. While as a software engineer I was
disappointed with the online teaching tools, the teaching and content were
first rate, and the emphasis on critical thinking skills pushed this far
further than any program of self study could go in my opinion. Further, as a
part of the Australian Graduate School of Management (AGSM), the course is well
credentialed. But more than anything, I think the best endorsement is that I'm
a completely more competent analytical and strategic thinker than when I
started the course.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>Maintaining Legacy Rails</title>
     <link href="http://davidbolton.net/blog/2011/02/07/maintain-legacy-rails/"/>
     <updated>2011-02-07T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2011/02/07/maintain-legacy-rails</id>
     <content type="html">&lt;p&gt;Something that has been bugging me for a long time is that our oldest Rails
apps will be 5 years old soon, an eternity in software terms, and yet the
topic of maintenance is rarely raised in the community. Rails is exciting
because it is so easy and quick to launch new sites and applications, and its
practices have influenced almost every web framework out there; life is
certainly rich if you're a creator right now. But while a great deal of the
sites launched each day are reasonably &quot;throwaway&quot; and not built for the long
term, there are plenty of sites out there that have to stick around for a
while.&lt;/p&gt;

&lt;p&gt;Anyway, this rising issue of maintainence has been tumbling
around in my head for a couple of years. Then, in the middle
of 2010 and after a specatcular amount of work, Rails 3 was
released. Around that time, Charles Nutter of JRuby fame
&lt;a href=&quot;http://twitter.com/hedius/status/18731342000&quot;&gt;tweeted&lt;/a&gt;: &quot;I hear the words
'legacy codebase' applied to Rails apps more and more lately.  Maturity
or obsolescence?&quot;. I've also alluded to issues around this in the past
too. We're hitting a stage where some major customer facing apps are
getting long in the tooth, and have also lost their original developers.&lt;/p&gt;

&lt;p&gt;The scary thing we face is: Rails is fantastic because it develops so rapidly
and makes us very productive, but the very danger of this is that the
constantly moving target can become a maintenance nightmare. Gems are
constantly changing in subtle ways, dependencies break, and developers move on
to new gigs. Now an abondoned open source project is sad, but not
irretrievable. But a hard to maintain enterprise scale app is another story --
its maintenance can be a thorny issue for an organisation, and can cost real
money.&lt;/p&gt;

&lt;p&gt;I've come across apps migrated from Rails 1.1, and done a couple of migrations
through the major revisions myself, and they certainly present some
challenges. Indeed, to get them to Rails 3 can sometimes trigger rewriting
major parts of the systems.&lt;/p&gt;

&lt;p&gt;Some will point to a fully packed test suite as the answer. But is it enough?
Can a test suite overcome architectural complexity? Can a test suite explain
intentions and historical decisions clearly? The answer to all of these is:
&lt;em&gt;sometimes&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;So, how do we future proof our apps? And how do we take control of existing
apps in maintenance mode? I have a number of suggestions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Know the dependencies&lt;/strong&gt; - by this I mean we need to know everything the app
relies on. Ever installed a gem without looking at it's source? Bad move.
Open it up and get reading. If the code is a mess, has a poor API, or is
mising tests then you shouldn't be using it if your app needs to last.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Know your code&lt;/strong&gt; - have a full test suite with a high level of coverage.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Update the platform&lt;/strong&gt; - smaller, incremental updates will be easier on you
than rarer large updates.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Document the intentions&lt;/strong&gt; - While tests can give you a good overview of the
codebase, and even the intentions if written well, I don't want to be
relying on them to explain everything. For a long term Rails app of
signigicant size, I need to know &lt;em&gt;why&lt;/em&gt; things are done a certain way. A key
thing to slip through the gaps here is non-functinal requirements. Write
them down, and then relate the code back to them (via comments, doco etc)&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;What have I missed? What else can help with maintainence of a large, one day
legacy, Rails app? (either for development or maintenance time)&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>My Vim Setup</title>
     <link href="http://davidbolton.net/blog/2010/08/23/my-vim-setup/"/>
     <updated>2010-08-23T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2010/08/23/my-vim-setup</id>
     <content type="html">&lt;p&gt;I've been using Vim as my main editor for well over two years now. After having used many editors in the past (from full blown IDEs like Eclipse and NetBeans, to simpler editors like TextMate), I've found my perfect match. It's ubiquity and openness are winners (I'd be disheartened right now if I was using abandonware like TextMate) and the modal editing is exactly right for how I work (I wish every text area had modal editing!)&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-full wp-image-271&quot; title=&quot;VimScreenshot&quot; src=&quot;/blog/content/uploads/2010/08/VimScreenshot.png&quot; alt=&quot;&quot; width=&quot;342&quot; height=&quot;342&quot; /&gt;&lt;/p&gt;

&lt;div id=&quot;_mcePaste&quot;&gt;How have I tailored my Vim setup?&lt;/div&gt;


&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;ul&gt;
    &lt;li&gt;The biggest factor has been changing to use &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2332&quot;&gt;Tim Pope's Pathogen.vim plugin&lt;/a&gt; recently. It allows you to keep your plugins separate in their own directories, which of course makes upgrading and managing them far, far easier.&lt;/li&gt;
    &lt;li&gt;I also rely on &lt;a href=&quot;http://vimwiki.googlecode.com&quot;&gt;VimWiki&lt;/a&gt;. It gives me a personal wiki (I store the actual files on DropBox) which I can access almost anywhere (and importantly, cross platform), but get to edit with all of the benefits of Vim. Prior to VimWiki I had unhappily bounced around between Evernote, Yojimbo, WikidPad (years ago), VoodooPad and a bunch of other solutions.  VimWiki is the best of the lot so far, though WikidPad was popular with me a few years ago.&lt;/li&gt;
    &lt;li&gt;Probably the most used plugin would be NERDtree, a file browser. Far better than any other option out there.&lt;/li&gt;
    &lt;li&gt;Other plugins I have, in order of most to least used: NERDcommenter, BufExplorer, Snipmate, VCSCommand, Ragtag, rails.vim and surround.vim&lt;/li&gt;
    &lt;li&gt;I've changed my leader key to &quot;,&quot; as I find it a little less of a stretch.&lt;/li&gt;
    &lt;li&gt;I use the Railscasts theme, and use 256 colors.&lt;/li&gt;
    &lt;li&gt;I use ack as my search command&lt;/li&gt;
    &lt;li&gt;I occassionally use the Fuzzy Finder Textmate plugin.&lt;/li&gt;
    &lt;li&gt;I admit to having a bunch of stuff in my .vimrc that I've forgotten about. Looks like useful stuff though, so I can't bring myself to remove them!&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;


&lt;p&gt;My &lt;a href=&quot;/blog/content/uploads/2010/08/vimrc.txt&quot;&gt;.vimrc is attached&lt;/a&gt;.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>InezGarcia.com</title>
     <link href="http://davidbolton.net/blog/2010/06/22/inezgarcia-com/"/>
     <updated>2010-06-22T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2010/06/22/inezgarcia-com</id>
     <content type="html">&lt;p&gt;Finally, my clever wife's portfolio site is live. I started building this years ago, but didn't have time to complete, so with some help from Damien at &lt;a href=&quot;http://meliondesign.com/&quot;&gt;Melion Design&lt;/a&gt; and Deena, it finally got finished.&lt;/p&gt;

&lt;p&gt;Check it out: &lt;a href=&quot;http://www.inezgarcia.com&quot;&gt;http://www.inezgarcia.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It currently uses Ruby on Rails 2.3.5, jQuery and Paperclip for attachments. It'll probably be the first Rails app I upgrade to Rails 3.0 too, as it's such a small app it should be the ideal candidate.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/blog/content/uploads/2010/06/Emporium-080715-Colours_063___EM06.png&quot;&gt;&lt;img class=&quot;alignnone size-medium wp-image-263&quot; title=&quot;Emporium-080715-Colours_063___EM06&quot; src=&quot;/blog/content/uploads/2010/06/Emporium-080715-Colours_063___EM06-219x300.png&quot; alt=&quot;&quot; width=&quot;219&quot; height=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>Vim Snipmate Cheat Sheet</title>
     <link href="http://davidbolton.net/blog/2010/05/12/vim-snipmate-cheat-sheet/"/>
     <updated>2010-05-12T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2010/05/12/vim-snipmate-cheat-sheet</id>
     <content type="html">&lt;p&gt;I've never really used snippets much, but I'm going to try and start. To that end, I created a Vim Snipmate cheatsheet for my main snippet needs (HTML, ERB, Ruby, Rails, Rspec.)&lt;/p&gt;

&lt;p&gt;This is based on two plugins for Vim: &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2540&quot;&gt;Snipmate&lt;/a&gt; and &lt;a href=&quot;http://github.com/scrooloose/snipmate-snippets&quot;&gt;Snipmate-Snippets&lt;/a&gt; (from Scrooloose).&lt;/p&gt;

&lt;p&gt;Get it here: &lt;a rel=&quot;attachment wp-att-239&quot; href=&quot;/blog/2010/05/vim-snipmate-cheat-sheet/snipmate/&quot;&gt;snipmate-snippets vim cheatsheet&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No photo, but it's up on the wall just to the left of &lt;a href=&quot;/blog/2010/04/my-current-setup/&quot;&gt;my current setup&lt;/a&gt;.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>My current setup</title>
     <link href="http://davidbolton.net/blog/2010/04/15/my-current-setup/"/>
     <updated>2010-04-15T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2010/04/15/my-current-setup</id>
     <content type="html">&lt;p&gt;This is a small update to &lt;a href=&quot;/blog/2009/10/my-tools-of-the-trade/&quot;&gt;my post from last October on my setup&lt;/a&gt;. I've recently started a new job and changed my working environment. Now it is a little like this:&lt;/p&gt;

&lt;p&gt;[caption id=&quot;attachment_229&quot; align=&quot;alignnone&quot; width=&quot;300&quot; caption=&quot;Two 24&amp;quot; monitors, Kinesis Freestyle keyboard, Kensington Expert trackball&quot;]&lt;a href=&quot;/blog/content/uploads/2010/04/IMG_0293.jpg&quot;&gt;&lt;img class=&quot;size-medium wp-image-229&quot; title=&quot;David's Work Setup&quot; src=&quot;/blog/content/uploads/2010/04/IMG_0293-300x225.jpg&quot; alt=&quot;&quot; width=&quot;300&quot; height=&quot;225&quot; /&gt;&lt;/a&gt;[/caption]&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Ubuntu 9.10&lt;/strong&gt; - I haven't developed with Ubuntu in over a year, but this has been pretty painless. I've generally found usable replacements for most of my Mac software, though I've struggled with a couple. I'm loathe to give up 1Password, but I need something cross-platform.  On the plus side, I dropped flirting with Evernote and Yojimbo for a much better notes system: &lt;a href=&quot;http://vimwiki.googlecode.com&quot;&gt;VimWiki&lt;/a&gt;, which has been amazing.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Two 24&quot; monitors&lt;/strong&gt; in portrait orientation - It took a little messing around to get this working right in Ubuntu, but it's been faultless since then. It sure is nice working with two large monitors, though I have changed the orientation slightly since this photo -- Now I have one of them right in front of me, with the second sligthly off to the right (though still touching,) so I'm not turning my head as much.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Kensingtion Expert Trackball&lt;/strong&gt; - I'm not sure about the trackball. It seems well made, and hasn't been bad, but it doesn't blow my socks off either. Generally I try not to use it all that much.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Kinesis Freestyle keyboard&lt;/strong&gt; - This is by far the biggest change in my setup. Before I had this, I would get hunched over a little keyboard, and then leave the office with tension and tightness in my shoulders. Now I leave everyday feeling as fresh as when I got in, with much better sitting posture and no back stress. I recommend a real ergonomic keyboard to everyone who works with computers now. I can't imagine not having it. The best thing is, it is so different to a normal keyboard, that I have no problem switching between my laptop and my work computer.&lt;/li&gt;
&lt;/ul&gt;

</content>
   </entry>
 
   <entry>
     <title>Components in Rails</title>
     <link href="http://davidbolton.net/blog/2010/02/11/components-in-rails/"/>
     <updated>2010-02-11T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2010/02/11/components-in-rails</id>
     <content type="html">&lt;p&gt;I gave a talk at the RORO meeting in Sydney on Tuesday night (Feb 9th, 2010) covering the ideas of desktop development that have been used in web development, and how and why we might think of using components with Rails. In particular, I focused on two Rails based frameworks -- &lt;a href=&quot;http://cells.rubyforge.org&quot;&gt;Cells&lt;/a&gt; and &lt;a href=&quot;http://apotomo.de/&quot;&gt;Apotomo&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;My slides (built for use with Scott Chacon's neat &lt;a href=&quot;http://github.com/schacon/showoff&quot;&gt;Showoff framework&lt;/a&gt;) are on GitHub: &lt;a href=&quot;http://github.com/lightningdb/roro-syd-beyond-actions&quot;&gt;Beyond Actions - Components in Rails slides&lt;/a&gt;.&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>My Programming Journey</title>
     <link href="http://davidbolton.net/blog/2009/11/10/my-programming-journey/"/>
     <updated>2009-11-10T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2009/11/10/my-programming-journey</id>
     <content type="html">&lt;p&gt;[gallery link=&quot;file&quot; columns=&quot;5&quot;]&lt;/p&gt;

&lt;p&gt;Somewhat inspired by an old &lt;a href=&quot;http://onestepback.org/index.cgi/Tech/Programming/SoftwareDevelSteps.red&quot;&gt;Jim Weirich post&lt;/a&gt; -- yes, I've been meaning to do this for a while -- here is a little history about my journey with computers and programming.&lt;/p&gt;

&lt;p&gt;My dad worked with computers from before I was born, and we had home computers for as long as I can remember (at one time we had 12!) I'll have to ask, but I imagine we had one from at least as early as 1982 (when I was 3 years old,) though there was no way on Earth I would even be allowed NEAR the computer at that stage.&lt;/p&gt;

&lt;p&gt;No, my programming introduction began later. I'm not sure where it came from (possibly dad, perhaps the library,) but the classic series of books from Usborne on learning Basic, specifically aimed at kids, was pivotal for me. These books were mostly about programming games at various levels, but they introduced me to a wonderful world where the computer did what you asked. Soon I was also cruising Byte magazine for listings, really anywhere I could find more code. Everything I was doing at this stage was Basic, and while Dad had many other books, such as Peter Norton's &quot;Programmer's Guide to the IBM PC&quot;, these were largely impenetrable to me. It helped that one of my best friends in primary school was also way into computers. We swapped code, chatted on BBSes, and learnt a lot in the process (he now works for Pixar.) I loved coding, and created a lot of different programs, including a fairly rustic but workable text editor, a mouse based graphic program and a personal banking application. In fact, I'm convinced the banking application played a big part in winning scholarships to a couple of Sydney private schools.&lt;/p&gt;

&lt;p&gt;Other random memories:&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;writing a column for the local paper about BBSes, winning an insane database package in the process. I believe it was called &quot;Magic&quot;, and boy was it a nightmare.&lt;/li&gt;
    &lt;li&gt;creating a programming language (in Basic.) I knew nothing about lexers and parsers, but the general structure was there. It couldn't do much, but it worked.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;During my teenage years I didn't do a whole lot of programming. I was into the tracker music scene (though not particularly talented), and just general teenage stuff: sports, music etc, but I did build a robot controlled by my own code for a year 10 science project. The school computer teacher grilled me because he didn't think I'd written the code myself, but after I proved I knew it inside out, he asked me to join the &quot;programming team&quot; for a statewide competition. Who even knew we had a programming team? I looked at the sort of things they had to solve, and they were so trivial and boring that I never joined up.&lt;/p&gt;

&lt;p&gt;I still used BBSes a lot (I was a particular fan of Active BBS, and my friend Andre's Mindflux BBS, both in Sydney), but when the internet first hit the mainstream I switched from BBS to internet and barely looked back. I built my first webpage in 1995. When I think back to the head start I had in that area, I really should rule the internet now!&lt;/p&gt;

&lt;p&gt;I'd always had a general idea I wanted to be in business -- for some strange reason I found accounting books fascinating -- so when it came time to go to university, I decided on a Bachelor of Sciene in Information Systems, a combination of computers and business. I enjoyed this and did reasonably well -- well enough that the computer people thought I was good at business and the business people thought I was good at computers. I took my first full time job as a consultant straight after uni, and was thrust into the world of corporate Java work. Despite my degree, I really had no idea what I was doing for a year or two, and it wasn't till my second job that my learning accelerated. Now I can't get enough of it, I devour every book in sight, and am constantly trying to plug any holes in my technical knowledge (though I wouldn't swap the business and management training for anything.)&lt;/p&gt;

&lt;p&gt;What a trip!&lt;/p&gt;
</content>
   </entry>
 
   <entry>
     <title>My Tools of the Trade</title>
     <link href="http://davidbolton.net/blog/2009/10/13/my-tools-of-the-trade/"/>
     <updated>2009-10-13T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2009/10/13/my-tools-of-the-trade</id>
     <content type="html">&lt;p&gt;Inspired by MIke Gunderloy's &lt;a href=&quot;http://afreshcup.com/2009/10/11/my-tools-of-the-trade-2009/&quot;&gt;&quot;Tools of the Trade&quot;&lt;/a&gt; post:&lt;/p&gt;

&lt;p&gt;Having just upgraded the hard drive in my laptop, and taken the chance to do a fresh OS install, I've had the opportunity to review almost all my tools. Here is how I get it done:&lt;/p&gt;

&lt;h2&gt;Hardware&lt;/h2&gt;


&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;MacBook 13&quot; 2008 unibody&lt;/strong&gt;, 4gb, 500gb 7200rpm drive - I use this all day, every day, and I *LOVE* it, easily the best computer I've owned. So physically solid, and OS X is the most humane operating system I've encountered, (but not perfect, oh no.) I've just upgraded to the 7200rpm drive, which seems noticeably snappier -- although it could be the fresh OS install as well.  Incidentally, I could only get a 500gb drive! I really only need a 250gb, but they're just not available. Anyway, I'm hoping I'll be able to get a 250gb solid state drive for under $500 in the next twelve months.&lt;/li&gt;
    &lt;li&gt;Standard &lt;strong&gt;Microsoft Mouse&lt;/strong&gt; - Does the job. I've seen the Kensington Expert Mouse trackball mentioned twice in the last 24 hours, so I'm taking that as a sign, and will probably try one out soon.&lt;/li&gt;
    &lt;li&gt;Backup drives -- one at home, one at an off-site location. Rotated every couple of weeks. Backups using SuperDuper! nightly. Basically following &lt;a href=&quot;http://jwz.livejournal.com/801607.html&quot;&gt;JWZ's advice&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Software&lt;/h2&gt;


&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://code.google.com/p/macvim/&quot;&gt;MacVim&lt;/a&gt;&lt;/strong&gt; - I never really gelled with TextMate.  Vim feels like home, even though I only really started using it in anger mid 2008.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.eclipse.org&quot;&gt;Eclipse&lt;/a&gt;&lt;/strong&gt; - Mostly I hate Eclipse. For the benefits (code navigation and refactoring), the hassles just seem to much. Don't get me wrong, I know my way around it, and I'm efficient at using it, but there's too much lost time as well. An IDE is essential for Java work.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.pixelmator.com/&quot;&gt;Pixelmator&lt;/a&gt;&lt;/strong&gt; - Pretty easy to use, though I don't push it much.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://amarsagoo.info/namely/&quot;&gt;Namely&lt;/a&gt;&lt;/strong&gt; - I used to use Quicksilver, but it seemed like overkill, and wouldn't pick up new applications quickly enough (probably configurable, but it should just work.) Namely JUST launches apps, and does it quickly.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.evernote.com/&quot;&gt;Evernote&lt;/a&gt;&lt;/strong&gt; - Unbelievably, you can't seem to link between notes, or make a note hierarchy. I don't like Evernote all that much, but there's an iPhone app, and the sync seems reasonable. I wish there was a better option.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://agilewebsolutions.com/products/1Password&quot;&gt;1Password&lt;/a&gt;&lt;/strong&gt; - It works, but they've really messed up the 1Password 3 / Snow Leopard issue.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.zotero.org/&quot;&gt;Zotero&lt;/a&gt;&lt;/strong&gt; - Crucial tool for organising my academic readings. The magic is it takes citations straight from Google Scholar, and handles different formats for material seamlessly. Combined with Skim (see below) it feels like a differentiator compared to my classmates' systems (Endnote, for instance, which just feels prehistoric.)&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://skim-app.sourceforge.net/&quot;&gt;Skim&lt;/a&gt;&lt;/strong&gt; - Beats Preview for annotating PDFs. Works brilliantly in tandem with Zotero.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.shirt-pocket.com/SuperDuper/SuperDuperDescription.html&quot;&gt;SuperDuper!&lt;/a&gt;&lt;/strong&gt; - Schedulable backups.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://culturedcode.com/things/&quot;&gt;Things&lt;/a&gt;&lt;/strong&gt; - There are a million organisation apps and systems out there, and I've tried a few, and this one seems to do enough to stick. Probably the fact that there is an iPhone app means something to me, even though the sync system is annoying.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.vmware.com/products/fusion/&quot;&gt;VMWare Fusion&lt;/a&gt;&lt;/strong&gt; - Parallels was my virtual machine of choice with my first Mac, but VMWare Fusion just seems faster and more stable. Looking forward to the 3.0 release at the end of the month.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.balsamiq.com/&quot;&gt;Balsamiq&lt;/a&gt;&lt;/strong&gt; - This is a great way to create mock ups of user interfaces. The best part is that they're a little rough, so clients don't get too attached. Kills Visio.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.irradiatedsoftware.com/sizeup/&quot;&gt;SizeUp&lt;/a&gt;&lt;/strong&gt; - A nice way to tile windows in OS X. It's no Awesome (a Linux tiling window manager,) but it does the job.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://visitsteve.com/work/selfcontrol/&quot;&gt;SelfControl&lt;/a&gt;&lt;/strong&gt; - Because sometimes/often I can't stop the distractions from, well, distracting me.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.openoffice.org/&quot;&gt;OpenOffice&lt;/a&gt;&lt;/strong&gt; - Works great for me, although we have Excel spreadsheets for reference data that have macros, and OpenOffice doesn't help here.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://fluidapp.com/&quot;&gt;Fluid&lt;/a&gt;&lt;/strong&gt; - Mainly I use this for a dedicated JIRA browser.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://getfirefox.com&quot;&gt;Firefox&lt;/a&gt;&lt;/strong&gt; - Wins for its supreme web development tools, like Firebug.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://iterm.sourceforge.net/&quot;&gt;iTerm&lt;/a&gt;&lt;/strong&gt; - I'd use Terminal, but it doesn't do 256 colours without a lot of hackery.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://adium.im/&quot;&gt;Adium&lt;/a&gt;&lt;/strong&gt; - I don't really like chat all that much, but this works.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://colloquy.info/&quot;&gt;Colloquy&lt;/a&gt;&lt;/strong&gt; - Man, I really suck at IRC. I fire this up about once a month.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;iTunes&lt;/strong&gt; - I fought iTunes for so long. Songbird had my vote, but when I got an iPhone, it had to be iTunes.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.videolan.org/vlc/&quot;&gt;VLC&lt;/a&gt;&lt;/strong&gt; - Plays media! Works!&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.cis.upenn.edu/~bcpierce/unison/&quot;&gt;Unison&lt;/a&gt;&lt;/strong&gt; - A great way to keep my music library in sync over two machines.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Incidentals&lt;/h2&gt;


&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;iPhone&lt;/strong&gt; - Best phone ever. Man, when I think back to that stupid Blackberry that I dealt with for a year, I get all angry.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Mac Mini&lt;/strong&gt; - Serves media around the house, and light browsing.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Dell 24&quot; LCD&lt;/strong&gt; - This was great when I was doing a lot of work from home, but its just the Mac Mini screen now. It rotates to portrait orientation, which is great for coding.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;MacBook Pro 15&quot; 2006&lt;/strong&gt;, 2gb, 80gb - This was my first full time Mac, a nice computer. It doesn't compare to the new one though. It is my wife's computer now.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Wish List&lt;/h2&gt;


&lt;ul&gt;
    &lt;li&gt;Fancy keyboard - Kinesis, Das Keyboard? I don't know, but it feels like I should have a swish keyboard.&lt;/li&gt;
    &lt;li&gt;Trackball mouse - As above, I think I'll try a Kensington Expert Mouse this week.&lt;/li&gt;
&lt;/ul&gt;

</content>
   </entry>
 
   <entry>
     <title>Objective C vs Ruby</title>
     <link href="http://davidbolton.net/blog/2009/02/20/objective-c-vs-ruby/"/>
     <updated>2009-02-20T00:00:00+00:00</updated>
     <id>http://davidbolton.net//blog/2009/02/20/objective-c-vs-ruby</id>
     <content type="html">&lt;p&gt;I was asked yesterday for advice on the best language between Objective C and Ruby to learn for someone new to programming, who is hoping to be employed working with that language in the near future (an important point).  Here's my response:&lt;/p&gt;

&lt;blockquote&gt;These are two 'hot' areas generating a lot of buzz here and abroad.

For the Australian market, I'd recommend Ruby because its best use case is developing websites in Ruby on Rails and there is plenty of demand for websites at all levels, from small sites to large.  Plus working with the web will teach a set of skills that is transferable to other programming languages -- such as using HTTP correctly and the ubiquitous HTML.  Ruby is syntactically reasonably simple, and makes a great language for learning the princuples of programming.

Objective C on the other hand has two main use cases currently: desktop software and iPhone applications.  Experienced developers can make serious money in these areas, but it is far more random, and not an area where you can build a career, particularly in Australia where the demand is minimal.  Objective C is could be interesting as a second or third language, but I'd advise against starting with it.&lt;/blockquote&gt;

</content>
   </entry>
 
</feed>

