I Am Not Myself

Bills.Pay(Developer.Skills).ShouldBeTrue()

Category Archives: Random

The Vendor Client Relationship (In Real World Situations)

This one is for all my contractor buddies out there.

Stolen from {CodeSqueeze}.

Model-First Development with Entity Framework 4.0 (?)

How did they go from version 1.0 of Entity Framework directly to 4.0?

Anyway, here is a nice overview of the new model first story that Microsoft has baked into the new EF in Visual Studio 2010.

After having watched this I have upgraded my impression of EF from “Complete Garbage” to “Not Entirely Horrifying”.

The RAD editor gives me pause as that is a sure sign of generating garbage behind the scenes. Is it human readable/modifiable?

The original EDMX format was incredibly brittle and very anti-source control system friendly. Have they made improvements to that?

I’ll have to play with it this weekend and see what it is like to actually build a simple app with it.

It is nice to see that MS is listening and at least attempting to play catch up with nHibernate. Would be interesting to do a feature by feature comparison between the two.

Done, Done, Done: The Cult of Done Manifesto

Saw this on Boing Boing today and can’t agree more. I declare this my official stance on everything from today forward.

The Cult of Done Manifesto

  1. There are three states of being. Not knowing, action and completion.
  2. Accept that everything is a draft. It helps to get it done.
  3. There is no editing stage.
  4. Pretending you know what you’re doing is almost the same as knowing what you are doing, so just accept that you know what you’re doing even if you don’t and do it.
  5. Banish procrastination. If you wait more than a week to get an idea done, abandon it.
  6. The point of being done is not to finish but to get other things done.
  7. Once you’re done you can throw it away.
  8. Laugh at perfection. It’s boring and keeps you from being done.
  9. People without dirty hands are wrong. Doing something makes you right.
  10. Failure counts as done. So do mistakes.
  11. Destruction is a variant of done.
  12. If you have an idea and publish it on the Internet, that counts as a ghost of done.
  13. Done is the engine of more.

Blatantly stolen from this source. Bre Pettis & Kio Stark are obviously geniuses.

I sometimes suffer from deer in the head lights syndrome. Before doing anything, I psych myself out thinking  “all the things that need to get done”, all the things “I don’t know” and “how will I make it perfect” thoughts. I read constantly about a topic but I never do

The only way I can get myself out of that mode is to simply throw myself at the task/idea and start doing. Fail over and over, learning from each experience until one day I can look back and say, “Hey I actually do that pretty well now.”

My hard drives at work, home and in my laptop are littered with useless half projects where I was attempting to get an idea or approach thought though. Travel down one path, fail, done. Travel down another path, fail, done.

Failing is how we learn. You never fail if you don’t start. Stop reading this. Get excited and make things. Done, done done.

Overkill or Useless: You Decide!

Here is the gist of what I was trying to accomplish. Please excuse the VB.. it’s not by choice. 8)

Basically the page I was working on has a set of switch statements based on string literals which annoys me.. So I was messing around with a way to use Enumerations to represent my commands. But the commands come back as strings from the various page controls.. So I was looking at a way to generically re-map back to the command Enumeration.

Private Function GetCommand(Of T)(ByVal commandName As String) As T
  Return CType([Enum].Parse(GetType(T), commandName), T)
End Function
 

Protected Enum GridCommand
  CompetencySelect
  FormSelect
  Sort
End Enum

Public Overrides Sub Grid_Commands(ByVal source As Object, _
                                     ByVal e As DataGridCommandEventArgs) _
                                     Handles CompetencyData.ItemCommand, FormData.ItemCommand
  If Page_Save() Then

    Select Case GetCommand(Of GridCommand)(e.CommandName)

      Case GridCommand.CompetencySelect
        NavigateToCompetencySelection( _
         CInt(CompetencyData.DataKeys(e.Item.ItemIndex)), _
         CompetencyData.ID)

      Case GridCommand.FormSelect
        NavigateToFormSelection( _
         CInt(FormData.DataKeys(e.Item.ItemIndex)), _
         FormData.ID)

    End Select
  End If

End Sub

My List of Useful Mac Software

So I have been living with my Mac Book Pro for a couple months now. I have purposely tried to use OSX for day to day things to force myself to get used to the OS. Here is a nice list of the applications that I have found useful so far.

This list is in no way targeted at long time Mac fans. Instead it is intended for newb/converts like me who are getting used to a whole new environment of software.

Quick Silver – Awesome tool for launching applications or finding documents. Simply hit Ctrl+Space and start typing what it is you want.. QuickSilver will display a list of items that match what you are typing. Once you have typed a set of letters and selected something QuickSilver will learn what you wanted and begin suggesting that thing faster… for example I can type Ctrl-Space, VM, Enter and launch VM Ware…. It’s a cool app.

Adium – Multi-Service messaging client very similar to Pigden. Can connect to MSN, ICQ, AOL, Facebook, GTalk, MySpace and many others.

Colloquy – Pretty straight forward IRC client if you are into that sort of thing.

Remote Desktop Mac – This combined with with VPN connection to work is awesome. There is pretty much nothing I can’t do now with my Mac and a network connection.

Twitterrific – Simple twitter client if you are into that sort of thing.

MonoDevelop – Mono is the open source implementation of the .NET framework. MonoDevelop a IDE for developing using Mono. If you ever wondered what it would be like without Visual Studio here you go.

Skype – Skype…

VMWare Fusion – Virtual Machine goodness…

XCode – The free IDE for developing on the Mac. Want to make a IPhone app? Here you go. Objective C is fun… really it is…

Bonus Tips: Be sure to enable Spaces via the Expose & Spaces menu. This lets you have the sliding desktop effect that I use all the time. A neat keyboard combo is Function+F8, this displays all your spaces on the screen and you can click one to go to that space. Expose is Function+F8 this will shrink all the windows on your screen and lay them out so that you can see them all. Then click the window you want and they all go back where they were with the one you selected in focus.

Bonus Bonus Tip: The World of Warcraft Mac client runs like a champ on my MBP. 😉

Why I Work for Alliance Enterprises

Discovered these little gem during the Christmas Potluck today.

And part 2..

 

UPDATE: Wanted to update this item to give credit to Shane Frost for creating these movies. Shane is no longer with Alliance, but after having watched these movies I would welcome him back any time. Hope things are working out well for you at the state Shane.

First Post From the Mac Book Pro

Well, I finally did it. I went over to the darkside and picked up a 15″ MacBook Pro and a copy of VMWare Fusion. I got the box home and had a Bootcamp partition with Windows 2008 Workstation installed within an hour. Install Visual Studio 2008 and I was ready to do some development in one Space while working on Keynote presentations in another.

My journey though Mac software beings. I sit here now typing this up in a very nice blog post editor called Ecto. It’s all good.

Look for more post as I explore the developer tools on the Mac.

My Thoughts On Obama's Victory

Company Bio Take 1

I have been getting hounded by our webmaster to supply a bio for our company bio page. Here is my first stab at it:

Bobby Johnson is a Senior Development Specialist and joined Alliance Enterprises in September 2008. Bobby is an Agile fanatic, Domain Driven Design enthusiast and Unit Testing maven who is not afraid to run with scissors. Bobby attended Southwest Missouri State University prior to bailing out to seek fame and fortune. He previously could not be contained by the Washington State Department of Labor & Industries or the Red Wind Casino.

I’ll update when when the actual bio goes up.

UPDATE: Here is what actually hit the page:

Bobby Johnson is a Senior Development Specialist.  He joined Alliance Enterprises in September 2008. Bobby is involved with the implementation of the agile approach to development and also developing Unit Testing for the AWARE system.  Prior to joining Alliance, Bobby worked at the Washington State Department of Labor & Industries as a  Development Specialist.

Going to a new Job Moving List