About Me
My name is Steve and I am a learn-a-holic.
(all together now: “Hi, Steve!”)
I believe strongly that any day that goes by in which I don’t increase my knowledge is a wasted day.
I am a practicing software architect and engineer (yes, they are two different skills and roles) whose formal training and education is in the building architecture field (I hold a B.S. in Architecture from The Ohio State University and practiced ‘real’ architecture for years before formally moving into the software field for good).
I came to the profession of software development because of an unrequited thirst to investigate why things work the way they do and to uncover for myself the dark underbelly of the world of software engineering. I have a strong interest in software development as a process and understanding software projects’ contribution to the overall business (whatever that means).
I am a born skeptic and tend to challenge most assumptions thrown my way; I find myself to be sympathetic to most of the Agile-leaning philosophies but feel that the zealousness with which they are often espoused at the expense of dealing with reality on the ground to be off-putting.
I am presently employed in the New York offices of Microdesk, a Value-Added-Reseller of Autodesk, ESRI, Google, and other software products. A significant and growing part of our business is in the area of custom software integration solutions for large AEC and manufacturing clients, often focused on CAD automation and GIS technologies.
(by the way, we are hiring software developers right now so if you are someone in the NYC or Greater Boston areas with a strong .NET background, who considers software engineering as a practicable profession, and any exposure at all to geospatial and/or CAD technologies, we’d love to hear from you!)


Hi Steve! Great stuff you created for the “Summer of NHibernate” ! Excellent learning videos - much needed, too!
Something else, though: being a big CodeRush fan myself, I was intrigued by your keypresses that seems to turn a method from private to public - is that a “out-of-the-box” CodeRush feature / key shortcut? Or is that a custom shortcut you dreamt up
Also, I really like the “let’s cleanup the class” where you moved all the private member variables into one spot and all public properties into another - again, I was wondering if that’s a CodeRush feature, and if so, what key shortcut it might be assigned to by default.
Cheers! And keep up the great tutorial work on NHibernate!
Greetings from Switzerland,
July 25th, 2008 at 11:47 amMarc
@marc:
Glad you’re enjoying the content. re: the CodeRush stuff, the transition from private to public on the method you’re in (or the var declaration your cursor is on, or the class you’re in, etc., etc.) that’s a standard CodeRush keystoke, you’ll be happy to know. If you hit ALT+up arrow or ALT+down arrow you will cycle thru either ‘increasing accessibility’ (the up-arrow) or decreasing accessibility (the down-arrow) for the member your cursor is in-scope on.
The little trick to this (that I’m using in the videos and all the time in my real work) is that if you’re already at ‘private’ (the most-limited accessibility value) and you hit ALT+down arrow the accessibility of the member will ‘loop back’ to the top of the accessibility list (which, of course, is ‘public’). This little ‘trick’ works in both directions, it turns out, so you can always use ALT+up arrrow to go from ‘public’ to ‘private’ and ALT+down arrow to go from ‘private’ direct to ‘public’. FYI, this is actually all in the CodeRush integrated HELP/docs window and I *strongly* recommend anyone using CodeRush take some time and actually READ the whole file — its COMPLETELY chock-full of all kinds of this stuff. The only reason I even discovered this capability was that I watched someone do something similar with Resharper and thought “there must be a way to do this with CodeRush too” and found it in the manual.
Re: the re-org of the class source, that’s a (freeware) DXcore addin called CR_ClassCleaner and I talk about it at length in this post:
http://unhandled-exceptions.com/blog/index.php/2008/07/16/confessions-of-a-developer-tool-hound/
…where I also point out some gotchas about what you need to do to get it working under the latest version of DXCore (that you will no-doubt have if you also have a current version of CodeRush/Refactor Pro! on your system).
Hope this helps (even if its a bit long for a comment reply ).
July 25th, 2008 at 2:30 pmI really like the videos you have provided, it’s hard to find good technical videos and these are perfect! They are pitched at the perfect level.
Have you considered writing a book on NHibernate? I know there is one coming but giving the quality of these videos I would love to see you translate that into a book
August 9th, 2008 at 3:11 pm@DJO:
Thanks for the positive feedback; I’m glad you’re finding value in the content.
Re: a book on NHibernate, with the info on the internet its not clear to me that there is all that much value in programming books any longer as sales (generally) continue to fall terribly and survey after survey suggests that developers these days don’t tend to use books as their primary (or even secondary) learning tool any more.
Even new versions of previously VERY well-selling books like ‘Professional C# Business Objects’ (CSLA.NET) are being released in new editions that are mostly if not entirely free PDF downloads rather than printed material for-fee.
That (the decline in programming book sales) is actually one of the reasons that I opted for the screencast medium for this info in the first place — I frankly felt more people would download and watch a screencast series than read a series of well-thought-out blog posts (or a book) on the same content.
That said, if a publisher wants to approach me and offer me a decent advance on my writing a book about this, I’d be glad to take that call from them but writing it and THEN humping it around to publishers hoping for a ‘bite’ is a losing battle in today’s age, I’m afraid.
I’m (personally) sad by the current environment for programming books as I think randomly-googled blog posts are probably one of the WORST ways to learn anything new (though it makes great lookup material for AFTER you have learned something), but that does seem to be the result here — the internet killed the programming book just like it killed the newspaper.
August 10th, 2008 at 7:41 amJust want like to say thank you for sharing your knowledge.
August 27th, 2008 at 12:39 pmYou have done a fantastic job in this techinical video.
It’s one of the best technical training I have in years.
I have learned a lot from it and it’s well complement with the material that I have read(NHibernate in action etc…..).
You did a very good job explaining such a complex framework like NHibernate. Concise and meaty content.
I would to love hear your thought on Entity framework vs NHibernate.
Which is the better framework as a developement platform moving forward.
Current I am using CSLA framework for my project and would like to leverage ORM framework to do the CRUD operations.
Any suggestion/gotcha/tips for CSLA and Nhibernate?
Keep up the good works!
[...] faut y consacrer vraiment beaucoup de temps pour l’apprivoiser et c’est là que Steve A. Bohlen entre en action. Depuis le début de notre super été 2008 [...]
September 5th, 2008 at 4:29 amThank you so much for the first session.
October 23rd, 2008 at 7:28 pmEven as a french speaking developer knowing nothing about NHibernate, I have been able to understand every steps clearly.
Please let me know if you publish other video training in the .Net field.
Now the following session …