#.think.in
learn.create.enjoy

2008 in Review

December 31, 2008 11:22 by brodie

For me it's been another busy fun-filled intense year with the usual ups and downs.  I've been amazed and fascinated this year with the amount of "new stuff" coming out from all directions, which has seen me cast my information gathering net deep into the web.  The result being that I've developed a good case of information addiction, which I will have to tame in order to get anything done ;-)

In particular from Microsoft I've learnt a fair bit this year about Silverlight, WCF, AJAX, MVC but still have a very long todo list ... including Azure, Mesh, Entity Framework, MEF, Surface, Workflow ... and more. I feel that it is a great time to be a software developer with so much to play with and the future looking so promising.

Also this year I stepped up my reading about the "Singularity" which has kept me very entertained - so much so that it's been a while since I've read a scifi novel (except for Ian Bank's - Matter, which was awesome) since reading about what is going on out there is kind of mind blowing. To hear Intel's CTO Justin Rattner say that the singularity will be achieved by 2049 is extraordinary.  Most conversations I've had with people about the singularity have been met with confused looks - almost "are you out of your mind" type looks - which made me realize that most people aren't really thinking much about the future, or not the distant future 10+ years - maybe people are just struggling to keep up with progress?

I think that next year that the idea of the singularity will gather a bit more momentum and perhaps get into the mainstream - although that may not be such a good thing ;-)

 

Anyways here are some of my favorites for the year...

 

Videos that blew my mind in 2008 (still!)

 

Technology/ideas that blew my mind (at the time anyways)

 

Favorite twitter peps

 

Favorite bloggers

 

Favorite podcasts

 

Have a happy new year in 2009!


Tags:
Categories: Reviews
Comments (0)

#.think.in infoDose #13 (22nd Dec - 26th Dec)

December 29, 2008 12:18 by brodie

Announcements

Architecture

.NET

ASP.NET/jQuery

Silverlight

Utilities

Books

1019-412661abea41fdb9

Singularity Watch

Other

Quote

"I much prefer the sharpest criticism of a single intelligent man to the thoughtless approval of the masses" - Kepler


Tags:
Categories:
Comments (0)

A taste of Python

December 28, 2008 13:51 by tarn

I'm on a bit of a break and generally enjoying a holiday from programming, but I am spending a couple of hours here and there learning some Python. I think learning a new programming language is a good way to improve my general development skills and knowledge. As I'm just learning and not under pressure to actually build something its quite a lot of fun.

I decided to learn either Python or Ruby. I understand both are fairly modern high level languages, both are considered fun languages to use by their advocates and both been implemented on top of the .NET dynamic runtime.

I would like to try Ruby on Rails but I felt while I was on break from programming, learning a new language and a new web framework was a bit much. I decided on Python, mostly because I like the name, but also as I understand Python has found use in all sorts of environments and for all sorts of purposes including scientific computation, robotics, game development, and business and web applications.

image I found Dive into Python to be awesome book for Java, C# and C++ developers wanting to learn the Python language. And its free online for browsing and downloading! I think it is very succinct in only explaining what you need to know about the language, which makes it very readable.

I was pretty excited about getting into IronPython after watching these two videos from TechEd 2007 in Orlando. There is lots of interesting information about IronPython and the Dynamic Language Runtime but there are also some really cool demos.

From the interactive console, Merlin (who apparently lives in all recent versions of windows as a COM control) is summoned and instructed to do all sorts of stuff, a Windows Form is created and run and then controls and events are added while its running! There are also demos of Iron Python with Visual Studio, ASP.NET and Silverlight. They kind of sold me on IronPython for now.    image

IronPython 2 has recently been released on CodePlex and its a pretty straight forward download and install. Slightly surprisingly it only contains a command line compiler, an interactive console, some libraries and sample applications.

There is also a project called IronPython Studio which is a Visual Studios extension to add support for IronPython development and debugging. I'm going to start with just the base install and Notepad 2 because I know you can do some pretty cool with it and I'd like to see how it all works. 

Although IronPython is apparently compliant with the Python language, the standard library, which is considered very powerful and extensive, is not completely implemented. This basically means most Python code that makes use of the standard library won't work in IronPython. Fortunately you can use most of the .NET framework from IronPython meaning there is a pretty rich framework available.

I hope it is possible to implement the entire standard library on top of the .NET framework, this would mean more Python code would work in IronPython and IronPython code that didn't directly call into the .NET framework would run on other platforms. 

As I'm happy to use IronPython and the .NET framework there is a great resource called the IronPython Cookbook which has heaps of examples of common programming tasks in IronPython and information about using IronPython in different environments from the Microsoft Robotics kit to the XNA framework.

I was hoping to write about some examples in this post, but its become much longer than I expected and I might wrap it up with some links I have found useful or interesting along the way.

Introducing IronPython - A good article from DevX

Revolver Systems - An interesting spread sheet / IronPython mash-up.

IronPython and the Dynamic Language Runtime - An MSDN article by Bill Chiles

IronPython and ASP.Net: Two tastes that taste great together - A brief article from ZDNet

IronPython and WPF - Just one of many great article from DevHawk which I've since added to my RSS feed reader.

CLR Inside Out - IronPython - Another good MSDN by James Schementi

The Voidspace IronPython Pages - A collection of IronPython resources

IronPython in Action - A book I haven't read and probably won't buy, but may be of interest to others

Hope you've found this interesting, I'm having a lot of fun and looking forward to getting back to hacking some more IronPython.

Please feel free to add a comment or point out any incorrect information.


Tags:
Categories:
Comments (1)

A break I had to have

December 23, 2008 17:27 by tarn

I've just finished up working for thinkgroup where I've been writing web based enterprise software in .Net for the last three years. Despite the fact that I enjoyed working there, after three years I really felt I needed a change.

I'm going to take a break before I start looking for new jobs, this may not be a good idea in the current global economic climate, but its a break I think I had to have. I have no clear idea yet about where I want to work or even what I want to do next. And besides Summer in Melbourne is the best time not to have a job.

It seems quite logical to get anther job writing web based software in ASP.NET. I'm very passionate about it, I enjoy coding in C# and I think I am good at designing and writing software systems to solve real world business problems. In this area I would be looking for senior developer roles and good salaries, but there are also other directions I would like to consider.

I choose to study electronic over software engineering at university even though I already really liked programming. I was looking for jobs in electronics when I graduated, but after not finding one due to both a lack of opportunities and lack of effort on my part, I ended up taking a full time role developing software.

I'd still like get a job designing electronics or low level programming but I think I would probably need to get a more recent qualification and consider re-locating to increase opportunities.  Another slightly more realistic option I'm considering is getting a job writing in anther language and framework. I'm interested in other languages and its a challenge I'd really like to take and I think I would benefit from in the long term.      

While I'm on holiday I'll probably still do a couple of hours here and there building a simple weblog with ASP.NET MVC I started and I'll be playing around with Python and IronPython. I'd like to blog and do a presentation to the VIC.NET User Group on some of the cool stuff you can do with IronPython but I'll wait to see how motivated I am during my break before I commit to anything.


Tags:
Categories:
Comments (6)

#.think.in infoDose #12 (15th Dec - 19th Dec)

December 22, 2008 09:46 by brodie

Announcements

Management/Agile

Architecture/Design

.NET

ASP.NET

Silverlight

(yep, you may notice that I've been doing some Silverlight work lately ;-)

Silverlight Charting

SQLServer

Singularity Watch

Tools

Other

 

Quote

"Reputation is built on small decisions you think do not matter"


Tags:
Categories: Links
Comments (1)

Desktop Racer

December 16, 2008 12:10 by tarn

I've finally got around to publicly hosting my DevSta entry - Desktop Racer. Turns out it was pretty easy, I was just too burnt out by it to want to do anything with it till now.

Play Desktop Racer Now

Looking at it now, I'm a little disappointed I didn't just go a little bit further and add a two player mode as I think it would  have actually made it fun to play. But honestly after the sixth day of the competition I was so over it I didn't care.

I would like to add the two player mode and some performance improvements to make it a bit more fun to play, but I seriously doubt I'll ever get round to doing it. I'm already half way into an ASP.NET MVC weblog project and I've also suddenly become really interested in learning Python.

I'm going to upload the source as well for anyone who is interested, but I warn you its probably not a great example Silverlight application as I was just learning what was a beta technology at the time. As the competition was only 200 hours I didn't spend much time pondering what would be the best way to implement it, I pretty much just got in and started coding. Some logic is nicely packaged but some classes just ended up getting way to large and unwieldy. I've since seen some good demos and blogs on patterns to help separate out the presentation and logic.

There are some cool-ish parts in the code; I like how the level and all the level elements are defined in XAML so you can visualize the level at design time in Visual Studios. I also kind of like how the all the level elements the car can collide with implement an interface that has its geometric information.  This allowed my to simplify the collision logic to two type of geometric primitive and basically calculate and collision with all the level elements in a single loop.


Tags: , ,
Categories: Demos
Comments (0)