Oh god I’d forgotten what it was like playing space simulator games.
We had a customer make a request to make a noise play whenever a button is clicked on an editor screen for a space-related product we’re developing for them. Our solution was to have it play the Also Sprach Zarathustra 2001: A Space Odyssey theme song, playing progressive parts each time you click the button.
Best 5 minutes I have ever wasted.
God I wish I had my copy of Homeworld: Cataclysm with me out of storage right now. So nostalgic for that game.
I’ve been messing around with fractal generation in code tonight. The first two are ones I’ve created myself, the rest are some amazing ones I’ve found from the internet.
Maths is pretty incredible.
Because nothing says “I’m a developer” like pizza and late night coding on a Friday night in the office!
This is just a quick article to hopefully dispel some common misunderstandings of the ASP.NET MVC Post/Redirect/Get Pattern. First up, a quick explanation of what the Post/Redirect/Get (or PRG) Pattern is for those who don’t know.
Reading about this pattern via another article (to follow) on how to cut down the model validation code in MVC, and I’m happy to see that most of what I’ve been coding has followed it fairly closely. Need to make a couple of changes but it should be fairly simple to do.
I was up til 2am last night working on one of our lead projects for work. There’s no particular rush to get things done for it within a certain time frame, but it’s been bugging me and more often than not I just get an urge to binge program some stuff and get some new creativity flowing. Between the late hours is when I find myself most productive, and it’s nice to be able to work through the evening if I feel like it and then just come in to work a little later the next day.
So this particular project has been released for about 9 months now, and since then I’ve developed the way I do my data access layers a bit. I’ve been working on other stuff (mostly a style revamp and a couple of new features, so I thought I’d take the time to revisit some of the core framework and try and structure it a bit better. This has resulted in significantly less configuration files being needed - there used to be two per data model but now both of those are gone for each of about 35 different classes. It’s also allowed me to make the whole thing unit testable, which makes me very happy going forward. One of my next tasks is going to be to write all of those tests so that in future if we change anything (and I will be changing things!) I can have the confidence of knowing I’ve not broken something somewhere.
Other things I’ve been working on are upgrading everything to the latest version (Entity Framework and the Amazon file store service in particular), and renaming things where they didn’t make sense (a “CustomerActionItem” is now more appropriately called an “Alert”!).
Day-time work has mostly been preparing new report pages for our main customer project, and making bug fixes and general changes where the customer has spotted something they expected to see a little differently. Got a meeting with them tomorrow to show off what we’ve done over the last two weeks. Fingers crossed!
Well-designed code is much easier to maintain, optimize, and extend, making for more efficient developers. Three high-level, language-agnostic aspects of code design are key to achieving this nirvana: system architecture, maintainability, and reusability. All three may be attained via the module pattern, whose extensible structure lends itself to a solid system architecture and a maintainable codebase. Anthony Colangelo shows how to craft our code into well-organized components that can be reused in projects to come.
The “Module” design pattern discussed in the article above seems to be a nice way of handling this, so I’m going to try and implement this across the page and see how it works out.
I was sorting through some old school papers to throw away before I move house, and I found these little gems in there!
I don’t think I ever posted this here, but this is the remote controlled Lego crane I mentioned. There’s a Mindstorms brick inside all of that yellow Technic, which is running the Java LeJOS software to control the motors for the caterpillar tracks (independently) and the crane arm motor. You have to manually switch between the crane functions which is what you see me doing when the camera moves around a bit.
The whole thing is controlled by a wireless Xbox 360 controller which connects to a C# application on my laptop, and the control signals then get sent via Bluetooth to the crane.
It was a hella fun experiment to do!