Monthly Archives: August 2013

Miller Park

Miller Park is one of the few ballparks in Major League baseball with a retractable roof.  Miller Park is in Milwaukee, Wisconsin, which is only a one and a half hour train ride from Chicago.  I took a trip there last Sunday to watch the Milwaukee Brewers play the Washington Nationals.

Miller Park, Milwaukee

View from our seats at Miller Park, while an Elvis impersonator signs the American anthem

The stadium is very impressive and there was a real carnival atmosphere.  There was loads of entertainment for kids and they even handed out free bobble head figures.  The games was also very interesting;  the Brewers looked really clueless early on, making errors and it looked like their heads were on a different planet.  But around the 5th innings things started to change and they managed to come back and win it in the end.

View of one side of the retractable roof from our seats

View of one side of the retractable roof

What is interesting is that the stadium was funded through taxpayers’ money, by adding an additional sales tax in the surrounding counties.  This additional tax will run until about 2017 to recoup the money, more than 20 years after it started.

1957 Braves World Series Champions, Braves have since moved to Atlanta

The 1957 Milwaukee Braves, the only World Series Champion team Milwaukee have ever had, they have since moved to Atlanta

The cost for the stadium is estimated to have been around $400 million.  Which sounds like a bargain compared to the $1,5 billion that was spent on the new Yankees Stadium in New York, which does not even have a roof.  And holds only few thousand people more than Miller Park.

Great view from outside Miller Park

The view at the stadium from outside, with the free bobble head figure they handed out on the day.

The Brewers now play in the National League but was part of the America League prior to the 1998 season.  The Brewers have never won the World Series, although the Braves, now in Atlanta, won the World Series in 1957 when they were still in Milwaukee.

After the game

After the crowd has gone

It was great fun doing a daytrip to Milwaukee and seeing a baseball game at Miller Park.  The only hiccup was a delay on train back to Chicago in the evening, when another train hit somebody that was trespassing on the train tracks. So we were delayed for a few hours.

My Dream Business

I have been reading two very interesting books in the last few weeks, the first one is called ‘Multipliers: How the Best Leaders Make Everyone Smarter’, by Liz Wiseman.  It is one of the best and most practical leadership books I have ever read. The second book is ‘The $100 Startup’ by Chris Guillebeau. Also a thought provoking read.

Both of these books have made me think about the problems I would like to try and solve in the future, so I wanted to write some of it down.

When starting with a blank page I always like to think about the ideal ending I would like to work towards.  So my dream business would meets as many of these criteria as possible:

Internet App/Software

Clearly I am a really technology junkie, so ideally I would like to find a problem that can be solved by building a web-based application.  I would like to follow a lean startup approach to try and solve it.

Skiing

I really love Skiing, so finding a problem in the skiing industry that I could work on would be first prize.  I would love to spend at least a few months a year living in a mountain community.  Working on a problem within the ski industry would make that really easy.

It would be awesome to have a business in the ski industry

My dream business would be in the ski industry, then we can spend more time in the mountains.

Learning

I am really passionate about learning. Not, go-to-university-learn-some-academic-stuff type of learning, but a more practical learning.  Something like getting people excited about getting better at something to help them improve their lives.

 Challenging myself and others

This ties into the learning angle.  I love challenging myself to do more, even more than I thought I might be able to do.  This is well illustrated in the classic scene in Invictus, where Nelson Mandela challenges Francois Pienaar to figure out how to get the team to achieve more than what they think is possible.

This can easily be applied to working with your own staff inside a business, but is it possible to have this effect on your customers as well?

Customer Experience

I want to be really focussed on customer experience, and make sure the business I build give customers more than they expect.  I also think you can change the world with customer experience, so I would like to give that a good go.

Annuity income

The ideal would be to build something that is focussed on providing annuity income.  My goal would be to build a business where I could be the owner, but only be the operator/manager as long as it fits in with my personal goals.  Thereafter I should be able to easily leave the business without a negative impact on the business, or the cash flow it provides me.

The more of these attributes I can find in my next business the better. My dream business would have them all!

Authentication and Authorisation

Another week has flown past!  Last week we learnt a few essential concepts and I also had a few ideas about the type of problems I would like to solve.  We did a bunch of work on authentication and authorisation.

Working on authentication was fascinating.  So when you have an app you obviously would like to customize the experience for your users, which means you need to identify and recognize them.  The easiest way to do this is by getting users to register and choose a password.

Example of User registration page.

Here is an example of a Registration page asking for a password and confirmation

But having users passwords in your database without encryption is a bad idea. Since most people tend to use the same password for many services.  Therefore it is better to encrypt the password, but if you use an encryption service that can be decrypted, somebody can still use the encrypted value you store to get the original password.

The answer to this is to use one-way encryption that is consistent. This means it cannot be decrypted, but every time the same password is encrypted the result is the same so you can compare the encrypted versions to see if they match. Like many other features that most apps use, there is a gem to help in rails. Which once again, makes the whole process a breeze.

Example of login page

Once registered a new user can just log in for future visits

Now you would think that when choosing which encryption method to use, you would want something difficult to crack but that can still do its work as quickly as possible;  but it turns out you actually want one that is slow, which makes it harder to brute force it.  This article on How to safely store a password explains it in detail.  So we ended up using bcrypt.

This next step after authenticating users, involves deciding who should have access to which services in your app.  Once again something that rails makes very easy!

I think The Starter League has done an awesome job so far with the curriculum, it feels like they introduce us to the right concept at the right time in the right dose.  They also leave enough for us to figure out on our own. This week Jeff the Chief Instructor at Starter League shared this video that shows a little of the teaching methodology that they try and follow:

It was another great week, it was fun learning about authentication and authorisation. I have also spent a great deal of time this week thinking about the problems I would like to solve, and will do another post about that.

Building our own IMDB

I am now 5 weeks into The Starter League and I still love every minute of it.  At times I find it hard to believe that it has only been 3 weeks since I worked with Rails for the first time.  It has empowered me to do things already that I thought would be impossible after only 5 weeks here.

In the last two weeks we have spent a lot of time working with databases.  First we’ve learnt how to make two databases relate to each other by adding a foreign key to one of them.  You call that one to many relationships, since you have one ‘object’ that relates to many others.

SMDB movie index page

The list of Movies on our SMDB app – our own IMDB clone

To explain this concept and give us something to work on, Raghu made us build a copy of IMDB (Internet Movie Database). For the sake of our project, we assumed a movie could only have one director.  So one director could have many movies but a movie could only have one director. This was our first one to many relational databases.  We achieved this by adding a director_id column to the movie table in our database…. that sentence would have made no sense to me a month ago!

We then added another one to many relationship by adding roles to a movie (again assuming a role could only be in one movie).  But since a role is played by an actor, we could add another one to many relationship between a role and an actor.

SMDB Movie Show page

The details page of my Favourite movie, The Shawshank Redemption on our IMDB clone

After we did that, Raghu explained that we in effect had created a many to many relationship between actors and movies by using a table linking the two, in this case called roles.  So we had created our first many to many relationship without even knowing it!

Raghu also challenged us to build a paging system after one of the classes this week.  I struggled with that one for a few hours but eventually I was able to get pagination going the way I wanted it without using a gem. A gem is like plugin, a piece of code somebody else wrote, usually for a task that many people want done. You install the gem and then you can use it instead of writing that part of the code yourself.

pagination on smdb

Doing pagination far a fun challenge, here it is nicely implemented on our IMDB clone

On Friday we’ve also learnt about font awesome, another little arrow now in our arsenal.  It allows you to add icons to your site that act like fonts, so you can change the colour, size and some other properties in CSS like regular fonts.  No need for a designer to redo everything a 100 times!

Building a IMDB clone was great fun! I continue to be amazed how much fun it is learning to code. I really look forward to using these new skills to solve meaningful problems in the future!

Yankee Stadium

The New York Yankees are to Baseball as the Bulls are to rugby in South Africa, and Yankee Stadium feels a little like Loftus.  They have won 27 World Series Championship, 16 more than the nearest rivals the St. Louis Cardinals. The Yankees last World Series victory was in 2009, which was their first season in the brand new stadium.

Myself and Jano outside Yankee Stadium in New York!

Myself and Jano outside Yankee Stadium in New York!

My first baseball game I have ever attended was at the old Yankees stadium in 2007, which was just across the road from the new stadium.  Construction on the new stadium had begun in 2006 already.

The modern concourse at the new $1,5 billion Yankee Stadium

The modern concourse at the new $1,5 billion Yankee Stadium

The old Yankee Stadium was often referred to the house that Ruth built, after the Yankees most famous player Babe Ruth.  Which was bought from their mortal enemies the Boston Red Sox in 1919.  That trade is believed by Red Sox fans to be one of the reasons behind their 86-year World Series drought.

The outfield, bleachers and the huge scoreboard at Yankee Stadium

The outfield, bleachers and the huge scoreboard at Yankee Stadium

The new Yankee Stadium has all the bells and whistles.  Escalators and elevators are in abundance to help move the crowds to their seats.  The walkways are wide and there are food outlets everywhere.

The giant US flag flying behind the bleachers at the new Yankee Stadium

The giant US flag flying behind the bleachers at the new Yankee Stadium

The new Yankee Stadium can hold over 50 000 people, and Yankee fans are every bit as passionate about there team as Bulls fans.  It must be intimidating for a visiting team to play at the Bronx zoo (one of the many nicknames from Yankee Stadium).  The Yankee’s record shows dominance rarely seen in any sport.

As with most baseball stadiums Yankee Stadium is steep in tradition and the Yankees rich history is on display through this wonderful modern masterpiece, which cost $1,5 billion to build.

Jano and Kerry with the baseball diamond in the background.

Jano and Kerry with the baseball diamond in the background.

If you are ever in New York, try and make it to a game at Yankee Stadium, you can watch the crowd as much as the baseball and learn a little more about America’s favourite pastime… and about the passion that drives it.