Wednesday, December 5, 2012

Why you should work for Sogeti

During my nearly 20 years as a developer, I have worked many places.  I have been a permanent employee and also a consultant.  I have always liked consulting because it not only gives me the opportunity to stay on top of technology, but it also has the benefit of a change in scenery.  There is no perfect assignment from heaven; but with consulting you can be assured that whatever you don't like about an assignment, it will end and you will go on to something new. 

Right now, Sogeti is the best consulting company in Columbus, OH.  They have benefits that simply cannot be touched:
* Free health insurance.  It is a high deductible HSA.  If you are not sick that often, then you really make out.  The HSA is all pre-tax and it gains interest like a savings account.
* Free Vision and Dental
* 401K with 6% dollar for dollar match, plus a 5% profit sharing bonus.  Essentially if you put in 6% into your 401K you are getting 17% in.  That is just crazy awesome. 
* The 401K mutual funds to pick from are actually very good at Sogeti.  I have been at some places where the mutual fund performance is so poor, the employees put all their contributions into bonds.
* Three weeks of vacation to start plus seven paid holidays.
* Individual Bonus Program.  At other companies, I have done many technical interviews in the past, attended user groups, and trainings with not a dime coming from it.  Sogeti has a point system where activities are tracked.  Surprisingly I have only been at Sogeti since May and I am on track for getting a $2500 bonus. 
* Life Insurance equal to 2x salary
* Short Term Disability
* Long Term Disability
* Company Laptop.  It is a beefy laptop too with a Core I7 with 8GB of memory.
* $10,000 Tuition Reimbursement
* 4,000 e-courses and 20,000 e-books
* MSDN Universal Subscription (That is worth 10,000 with the Visual Studio architect that is included)

The first company that I worked for in Columbus went bankrupt around a year after I started.  There were 120 people laid off in one day.  Ever since then I am ultra sensitive about how my employer is doing financially.  In fact they call me the Canary; as in, when the Canary gets out of the coal mine, you had better get out right now.  I can't reveal any financials for Sogeti, but I can say Sogeti is growing during the recession.  They are impressively beating the financial goals they have set.  That coupled with the fact that Sogeti is all over the world gives it inherent diversification and stability.  

There are many other things that Sogeti has going for it that makes it very attractive:
* Positive culture.  Everyone has each others back from the President down to the consultant level.
* Solution projects are favored over Staff Augmentation.  Sogeti's bread and butter is Solutions work, not Staff Augmentation.  This equals more exciting opportunities and higher bill rates.  The higher bill rate translates into higher salaries compared to other consulting companies in Columbus.
* Recognition for hard work and overcoming challenges.  Frankly I have been pleasantly surprised at the positive feedback that our team has received.  I have been on great teams before at other companies and have received no feedback.

The Canary is happy.  In fact, when recruiters from other companies call me, I say "No thanks, I am going to stay with Sogeti for the next 20 years."

Contact me at greg.finzer at us.sogeti.com if you are interested in coming on board with Sogeti 

Monday, October 8, 2012

What I don't like about Windows 8

1.  The double lock screen
To me, it is just plain silly two have two lock screens, one for a pretty picture of a flower with appointments and one to type in your password.  The flower and password screens should be combined into one showing appointments, email count, and the password too.

2.  The start menu and desktop are very disjointed.  It is all very jumpy.  I have a Windows Phone 7 and I love the device.  It flows smoothly between the start menu and applications.  The start menu on Windows Phone 7 makes sense because the phone primarily a communication and socialization device.  The desktop PC is for work; managing documents, creating code, doing research, managing photos and videos.  I think Microsoft has the idea that the desktop is the same as the phone.  It is not.  Going from the new start menu to the desktop is like coming out of the dark movie theater into a bright afternoon day.  Shockingly bad.

4.  Does not work with a Microsoft Mouse. 
I have a wireless Microsoft Mouse.  While it works, it hangs up some of the time.  It works fine under Windows 7.

5.  Modifying the pointer speed in the control panel does nothing.
I have a new Dell Core I7 Laptop and the accupoint is as slow as molasses.  Windows 8 is nearly unusable.

6.  It does not remember my browser preference.
The first program that I installed was Firefox.  When I click on a link in my email it still goes to IE.

7.  There is no red X.
Microsoft has made it nearly impossible to close an application that runs from the start menu.  You have to go to the left hand side, find the application, then right click then click close.  A far cry from the single click of an X.  Bring the red X close button back.

8.  It is nearly impossible to find out how to shut down the PC
For years, Microsoft has trained us to click the Start menu to shut down.  Now they have completely lost their minds and have buried the shut down under the settings menu.  Nothing  says Shut Down like Settings.  Really?

9.  Windows 8 didn't recognize an SSD drive. 
I was shocked at this really.  My older laptop with Windows 7 was able to recognize an SSD drive.

10.  Unless you have used a previous version of Windows you are sunk.
Control Panel cannot be found unless you actually type it into the start menu.  I have been using Control Panel for years but is not actually one of the options on the new start menu.   While the Control Panel may be found on the desktop side bar, it is not intuitive.  You basically have two areas of settings.  The settings in the new start menu and the control panel settings on the desktop.  Really they should be one.  If I am running on the desktop, I want to see all the settings.

I skipped running Vista at home because of similar issues:
* Microsoft simply renamed or buried things so badly it was nearly impossible to find. 
* Hardware incompatibilities

It looks like I will be waiting for Windows 9 until these issues are fixed. 

I will write a post on the positive things later.  I will give Windows 8 one positive thing out of the gate; Windows 8, boots up much faster.  It is nearly as fast as an Amiga 2000 in boot up speed.

Saturday, October 6, 2012

Frequently Asked Questions for Windows 8

Yesterday I bought a hard drive at MicroCenter (a Seagate Momentus XT) and swapped out the hard drive in my laptop and installed Windows 8.  Here are some of the gotchas I encountered:

How do I restart in Windows 8?
Move your mouse to the upper right hand corner.  When the pop up menu appears, click settings, then click power, then click restart.

How do I shutdown in Windows 8?
Move your mouse to the upper right hand corner.  When the pop up menu appears, click settings, then click power, then click Shutdown.  By default the power button will put the computer into sleep.  To change this, go to the new start menu, type in "Power Options" and change the power button to shut down.  Then press the power button.

How do I get my desktop start bar back on Windows 8?
Don't bother with any of the reg edits on you tube, they don't work.  You will need to install a third party tool.  This is the only one that works that is not in beta:  http://classicshell.sourceforge.net/ 

How do I change the pointer or mouse speed or acceleration in Windows 8?
Believe it or not the settings in the new start menu really doesn't do much in Windows 8.  In the new start menu in Windows 8, type in Control Panel.  Click the Hardware and Sound Link and then mouse.

How do I find the programs that I have installed in Windows 8?
In the new start menu, start typing and search for your program name.

How do I switch programs in Windows 8?
The normal Alt-Tab switching is available if you have a keyboard.  Alternatively, go to the upper left hand corner with your mouse then go to the tiny tabs on the left.  Click on the program you which to switch to.

How do I close a program in Windows 8?
Go to the upper left hand corner with your mouse then go to the tiny tabs on the left. Right click on the program you wish to close and select close.

How do I get to my desktop in Windows 8?
Click the desktop icon.

How do I get back to the new start menu in Windows 8 when I am on the desktop?
Press the windows key.

If you like this FAQ please tweet and Facebook it to your friends.  If you have any more questions about Windows 8, comment to this post.

Tuesday, July 3, 2012

Why I like re-inventing the wheel

Admittedly for my business I follow the Microsoft model of taking an idea that is already out there and then improving upon it.  I can remember years ago when there were magazine ads for Word Perfect that had a picture of an open semi truck filled with boxes of Word Perfect software.  Word Perfect is a distant memory.  Microsoft came along and took that idea and made it better, Microsoft Word.  That is what I am trying to do today with my latest piece of software, Knight .NET Data Layer.

http://www.kellermansoftware.com/p-47-net-data-access-layer.aspx

I don't think developers should have to write basic database plumbing code.  Years ago, writing straight ADO.NET code was tedious.  The Microsoft Data Application Block made it a little better.  Then NHibernate came along. We used it on many projects.  Around three years ago I expressed my disgust with NHibernate.  Namely, the ugly xml mapping files, the inelegant output of the SQL, the performance of the SQL, and the overt complexity of the setup.  I remember distinctly telling Steve Harmon that I was going to write my own ORM.  He told me not to; that I should simply extend NHibernate.  Steve is a smart fellow, but I decided to write my own ORM anyway.  I received several laughs from people saying that I should call the product "Not NHibernate" 

Well years have gone by.  There is now Fluent NHibernate which does make NHibernate a little nicer.  Although I would have to say that the the convention configuration in Fluent NHibernate is about as crazy looking as creating a regular expression.  Using Fluent NHibernate also decreases the flexibility of NHibernate.  And of course Entity Framework is now on the scene.  To be honest, I would have to say that once Entity Framework came out, I thought about killing my project.  I mean the basis of my project was complete automatic mapping.  Entity Framework is close.  The only thing it does wrong is having to create the DbSet and the DbContext.  That is completely unneeded.

There are more ORMs out there than you can shake a stick at.  When I started creating the competition chart for how my ORM stacks up against all others, the list was daunting.  Clearly there are a lot of other people and companies out there that have spent thousands of hours and dollars to try to solve the ORM problem.  If NHibernate or Entity Framework are the bomb, why would they create another ORM?  Because those companies must also consider the problem to be unsolved, otherwise they would not even have tried. 

http://www.kellermansoftware.com/download/DotNetTools/Knight-Data-Access-Layer-Competition.xls

In believe that I have solved the ORM problem.  Knight .NET Data Access Layer is better than NHibernate, better than Entity Framework, better than anything out there that interacts with a database.  Here is why:

  • ORM without any mapping files, attributes, or convention configuration.  Similar to Entity Framework except no DbSet or DbContext.  Flexible that you can override default behaviors with attributes, code, or xml mapping files.  You choose.
  • Automatic mapping of straight SQL and stored procedure output to objects without any mapping files.
  • LINQ to SQL Server, LINQ to Oracle, LINQ to MySQL, LINQ to VistaDB, LINQ to Sqlite, LINQ to MS Access, and LINQ to Firebird
  • Wrapper for ADO.NET to perform standard operations such as executing sprocs.
  • Generate databases from namespaces.  
  • Synchronize namespaces to a database.
  • Generate classes from tables.
  • Standard patterns built in that we all love.  Session factory, unit of work, active record.
 Let me know what you think about Knight Data Access Layer.