Posts

Showing posts from 2014

Aspiring GameMakers

Image
I recently had the amazing opportunity to do a presentation on making games for my son's 2nd grade class. It was on his 8th birthday and I think Callum was thrilled to have his dad showing off some geekery. I brought in my laptop and projected a few slides. I wanted to let the kids know a few of the skills that are useful for game makers and reinforce that the subjects they're studying are have more utility than they might think. Things to pay attention to in school if you want to make games included: Math Art Music Programming (not taught in school, to the detriment of all of us) Practice! The kids added: being smart, knowing about computers, sounds, and a few other terrific suggestions. I was thrilled by the number of questions that I got about games. I had a group of boys right in the front who were especially eager, but I made a point to call on the girls (who sat in the back) every time that one raised their hands. It was harder to do this than it sou...

The Fate of Dev-C++

Image
I cut my teeth on C++ back in my early days of coding. I used one of the Borland IDE's at first, but once I discovered Dev-C++ I was hooked. It was lean and mean, surprisingly feature-rich, and fairly stable. This was before Microsoft started giving away Express Edition licenses and at the time Dev-C++ seemed like a gift from heaven. The IDE was the brainchild of Colin Laplace, with Mike Berg and Hongli Lai as contributors. It was coded in Delphi and open sourced under the GPL. It was a Windows-only IDE that used GCC/Mingw and made it really simple to get started with Win32 coding. I grabbed Dev-C++, armed myself with  Windows 2000 Programming from the Ground Up , and dug in, creating some truly shitty applications but learning a lot along the way. Remember This? Whatever happened to this venerable IDE? Well, the original software has fallen into disrepair and the author is no longer supporting it. At least a few projects have sprung up, however, to keep the I...

Mono Versions in Unity 3.5.7 and 4.3.4

Recently, I needed to figure out which versions of Mono Unity is currently supporting. I had to do a little digging to find out, so I thought I’d post the information here to help others who might need the information. One note: Mono versions don’t correspond to C# / .NET versions at all, and .NET feature support varies so a direct mapping of Mono version to .NET version is problematic. That being said, here is a rough mapping of versions: Mono Version .NET Version 2.0 API roughly equivalent to .NET 2.0 C# 2.0 2.6 LINQ to SQL, Partial WCF 2.8 Roughly .NET 4.0, C# 4.0 2.10 C# 5.0 See the Mono Compatibility Page for more information. I checked the latest version in Unity 4.3.4 and 3.5.7 by running mono –V on the frameworks from the Unity package. Unity ships with two versions of Mono, an older version in the “Mono” directory and a newer one in the “MonoBleedingEdge” directory. Both are badly out of date (Mono 2.10.8 is no longer receiving backp...

Post Roundup: April 15th, 2014

Well, howdy. It's time for a post roundup, which is where I link out to the posts and topics on my other blogs. This week I kicked off some new endeavors including three new blogs here on blogger. As a recent owner of a new Chromebook I started The Chromebook Advisor , aimed at sharing my Chromebook experiences with others. I also decided to launch a blog for people absolutely new to programming: Codeacious . Finally, I moved one of my blogs to blogger: Ebooknowlogy , which is all about the business of ebook self-publishing. Here are the posts that you may have missed: How to Code: Text Editors How to Code: Basics Looking for Code Sony Reader / Diesel Ebook Stores Close Welcome to Blogger, Ebooknowlogy! 7 Reasons I bought an Acer C720 Getting into Chrome Happy reading!

OSX: Can’t Unmount/Eject Volume

I ran into this issue today and thought I’d post the solution for the community. I went to eject a volume that I had mounted and got the message from the OS saying that the disk was in use. I could Force Eject if I wanted to, but generally I don’t like to do that unless I know what data could be mangled. I opened Activity Monitor and didn’t see anything that looked promising as the culprit. I closed everything that I had been using on that volume, including Quitting any of the applications that were still open in my Dock. That didn’t help. So what I really needed was to know the actual process that was hanging onto a file. Here’s the unix command that did the trick for me:   lsof | grep VOLUMENAME Preview turned out to be the culprit. It wasn’t still in my Dock so must have had a problem shutting down. I closed it in Activity Monitor and the volume ejected normally. This doesn’t happen nearly as often on a Mac as on a Windows machine and when it does...

Create Small Disk Image on OSX

Image
One of the strangest things about the builtin Disk Utility app on OSX is that it has a minimum size when creating a disk image. Notice in the screenshot below how I’m not allowed to create an image smaller than 40 MB? The strange thing is that this is a limitation applied by the UI, not by the system. hdiutil will happily generate a .dmg file that’s smaller if I use the command line to do it. This comes up pretty regularly for me, so I decided to record the details here: hdiutil create -size 920k image.dmg -srcfolder blah/ -fs HFS+ The -srcfolder option isn’t necessary but it’s kind of cool. It will create your disk image with the files from -srcfolder already inside. Neat, huh? If you need more details, just type hdiutil to get a list of options.

Unity’s MonoDevelop Won’t Start on OSX

Image
I ran into this problem the first time that I installed Unity, and I just encountered it again after upgrading to Unity 4.3. When I launch the IDE the MonoDevelop logo shows briefly in the dock before disappearing but MonoDevelop doesn’t start. Here’s a little detail on my setup: Mac OSX 10.9 I generally run as a non-admin user. Unity 4.3, MonoDevelop-Unity 4.0.1 The problem seems related to running as a non-admin user on my mac and MonoDevelop doesn’t seem to like this. Here’s the workaround that solved the problem for me: Move the MonoDevelop app from the default location in your applications directory to a directory where your user has write permissions. For example, mine goes in ~/Applications. In Unity, select Preferences > External Tools > External Script Editor. Choose Browse… and select the path where you put MonoDevelop in step 1. Make sure that this is set as the external editor in Preferences. Selecting an External Editor Now when you ...

Getting Started With Lua

I recently had a chance to refamiliarize myself with lua for a project at work. A few years ago I spent some time dabbling with Corona SDK, and by extension, with lua. My first impression was that Lua was adequate for scripting tasks, although the syntax for OOP was clunky, and I couldn't see a lot of use for it beyond the Corona SDK platform. In any case, I thought I'd give it another try. I was impressed with how easy it was to get started with lua. I'm on a mac, and the main page has a download link to source code but no pre-compiled binaries. Ok, no problem, I'm a *nix nerd and I'm not afraid of building from source. I was impressed at just how easy that actually was. The entire codebase is just a few dozen files and compiled in ~ 3 seconds on my mac mini. I love languages that I can fit into my pocket, and lua just caught my attention! Here's what to do to build Lua from source:   curl -R -O http://www.lua.org/ftp/lua-5.2.3.tar.gz tar zxf lua...

Oh Spammers, Please Try Harder

While tending my wordpress spam I came across a grammatical gem that even makes those instructions on the chopsticks wrapper look intelligible: While choosing your nursing pajamas, care has marketing campaign taken for more information on grab going to be the appropriate material and circumference and length for more information regarding ensure that you believe comfortable all of which will relax all around the element It’s so lovely I just couldn’t bear to let it go unshared. For a minute, I was thrilled that someone had taken the time to help me with my nursing pajama troubles, given that none of mine fit well around the element. But alas, they only want to steal my identity and sell it to the Russian mafia.