White Noise vs. White Space

I think the older I get the more I find my self annoyed with the way some code is written. If its mine or some code from another developer I need to review/grok to understand how the code is written can really impede understanding.

One of the things that VS2008 introduced with C#3.0 is auto implemented properties. The more I use these the more I really like the whole idea and the cleanliness. Not only does it reduce the amount of boilerplate code but it reduces the amount of scan code to be read. The pre auto implemented property signature I now consider white noise .. stuff around the intent that generally offers little value in most cases.

I however do like white space in source code files. Trying to determine where a conditional ends, what is the statement intent or other when lines run into each other can make a developers job more difficult. If you write code that someone else needs to understand put in proper spacing so that it is easy to read. Comments would be nice but if time does not allow (sometimes it does not) at least allow for the code to be read more easily.

I also like regions and code organization where like items are grouped (Private Fields, Public Members, Implemented Interfaces) rather then having them all over the file. Its amazing the amount of productivity to be gained if a little effort is made to be consistent.

Mark

7 Steps to Happiness

Today here in Ontario, Canada, its pretty damn cold. Honestly I do not know how cold it is except from looking out my window and seeing the snow laden trees and the just freshly plowed streets. As I gaze out the window seeing my neighbors all bundled up cleaning their driveways and cars I remind myself how lucky I am to be able to walk 7 steps to work and not have to leave the comforts to battle traffic and the elements. To my brethren in the coldest places I feel for you, but I am so glad for my 7 steps.

 

Mark

Destructive Creationism

Given that every day we hear about the layoffs that are happing in Corporate America I started to think if the downsizing in itself might actually be beneficial to some who are let go. For the longest time the Google’s, Microsoft’s and IBM’s of the world have been sucking up the biggest and brightest resources to work on their products and fill their revenue coffers. Now that some of those individuals find themselves available, are we going to see the creation of new companies that will compete with their former employees, or will smaller companies now have available resources to build their businesses and execute on the visions that are laying dormant do to lack of talented employees? I suspect that once some of these individuals get out of the comfort zone of having a regular paying job, and realize that opportunity is still available,  we will see some creative ideas cropping up and new businesses being built.

 

Mark

Hiring a Intermediate .Net Web Developer

So I am going to try an experiment. Usually hiring a dev means contacting a HR agency and and working through the process to find someone. At the end of that process you pay between 10 and 20% of the wage up-front to the HR company. Depending on the resource this can add up to quite a bit of money. Now that we are deeply immersed within this social economy and also dealing with the biggest downturn in such a long time I does it make sense to pay a Hr company, or instead use that money to provide better equipment for the hire such as multiple monitors. beefier machines or training incentives/bonus’s. I have gone through the contracting companies before with mixed results on both the employer and employee side with mixed results and feel this time it is better to use the social net that exists. So here goes;

 

BITtelligent Software in Cambridge, Ont Canada is looking for an Intermediate .Net web developer.

 

There is no hiding the fact that we are a small company. Its what puts us apart from other companies. We pride ourselves on quality and the daily positive impact we make in our partners businesses each and every day. We are growing and have an immediate need to fill an intermediate .net web developer role. Its an exciting position not only because of the impact you would make to the business from day to day but also the varied amounts of projects and technologies you would be exposed to. Technologies like Silverlight or WPF, Workflow, using C#3.0 and VS2008. Daily you could be working on a web site, windows application/Service or extending CRM applications. 

 

To give you an idea of some of the projects we work on

 

  • Custom BlackBerry Java development
  • Sage SalesLogix Web and Windows Development
  • Integration Services – Windows Services that Consume Web services
  • Mobile Platform Development
  • Custom Web Site Development
  • and more …

 

If you have the following skills

 

  1. C# or VB.net, ASP.net, ADO.net
  2. Javascript would be nice if formal experience with JQuery
  3. Master Pages, CSS, HTML

 

Nice to have

 

  1. Windows forms development
  2. CRM experience (SalesLogix preferred)
  3. Mobile Development Experience (Windows, BlackBerry or IPhone)

 

and you are interested in applying or learning more, please send me an email @ mark.dykun@bittelligentdev.com

Printers are not built to last

This weekend my wife needed to print off some color pages for some work she was doing. To my disappointment the printer was not working anymore. What bothered me was how many printers we have been through compared to how many computers. It seems that a printer is made to last a very short time and that HP, and the other printer manufactures do not keep a model around for more then a few months at a time. I understand that the model is cheap printers and charge for the consumables but is it at all possible that the manufacturers can put more quality into the hardware and keep some of these devices out of the land fills?

 

Home Renovations commence

We are going into our 3rd year in the house we are now living in. I have decided to embark on the basement renovation project. As I find myself wanting to entertain more at home then go out we are looking to make this the hub where we can have friends and family over and provide a great experience. Some of the things I am actively thinking about;

 

1. Bar

I do not drink much and only socially though I feel having a central bar caters to the appeal of the room. We think something fashioned like a English pub style where several people can sit around and enjoy a cold one.

2. Home Theater

We are quite the movie watchers here and it has always been a dream to have a really big screen to watch the blockbusters on. I can imagine 106″ screen with full THX surround sound

3. Games/Activities

Already have a Pool, Ping Pong, and Fooze Ball table (they are separate), Xbox360 and PS3. I am thinking about an old classic style pinball table for the appeal of it.

We do have quite a lot of room in the basement so It seems like it should work out great. Is there anything I missed or that would perfect the entertainment space?

Building a Custom SalesLogix Web Smart Part in VS

A post on the SalesLogix newsgroup asked for the steps on creating a custom smart part. For this installment I am just going to detail out the steps.

There are times that the out of the box functionality in SalesLogix web may not be enough to support a business requirement. When this occurs breaking out VS and doing some hand coding will be required.

The steps to creating the Smart Part are actually quite straight forward;

1. Create a Smart Part in application architect and position it correctly in the target page

What we are doing is giving a starter point smart part that will give us access to the entity model and other services. There is no reason for us to code this by hand.

2. Position the Smart Part accordingly in the target page

The Smart Part though it has no immediate functionality has a position (Detail, Tab, or Dialog). The reason we do this up front work is that it will be hosted in the web site and we have a way to test the changes outside of the AA build/deploy/test loop.

3. Build the web application and deploy

We want the smart part and the web to be completely deployed so we can open it up in Visual Studio. This will ensure access to the complete framework and services.

4. Open the web up in Visual Studio

Self explanatory but this now gives us access to the underlying web application.

5. Locate your smart part in the solution explorer and make the required custom changes.

6. Test the smart part while in VS. In the project properties I edit the start action. By default it is “Build Web Site”. This can add considerable time to the process. Change it to “No Build”

 

image

 

7. When you are happy with the customization. In App Architect delete the old Smart Part and import the new one.

8. Finally update the page settings to point to the new custom smart part, build and deploy

2009 Introductory Post

This is the time that we think upon the next year, hopefully using lessons learned from the last to do better. January 1st is the time for resolutions such as loose weight, exercise more, give up that bad habit or some other challenge that we each have in our daily lives. For me January 1st also  marks my birthday, and this year the pivotal 40th. Unlike other people, I do not give much to statements like your another year older, or how does it feel now that …. since really we are really moments older and these anniversaries rarely have any impact or significant change that can be measured. Its not like some switch is turned on an you are wiser or less wise, capable or less capable or have been given the divine touch and have all the answers to the questions that have been piling up our whole lives. The thing about knowledge is that it accumulates through time, and unless you have some life altering ‘Aha’ moment this is the way it has to be.

So as I reflect back to the last year, I count myself as very lucky. I started my company and in all counts it has been very successful in accomplishing its goals in customer base and growth. I have hoped to have hired some developers by now but looking forward with the stability of the economy, I believe being a small consulting firm will prove more resilient then a larger one and help me avoid any cutbacks in providing service to my customer base.

I was looking to avoid mobile development in 2008 and move on to more diverse projects. For the most part that goal was accomplished however I did engage in several mobile projects and currently working on a native BlackBerry application. Through this I have gained a greater appreciation for Microsoft. I can imagine several readers rolling their eyes now, but for a developer tooling and libraries make or break the development cycle, and I still believe in the development space Microsoft is the one to beat.
For my Java development and BlackBerry I have been using eclipse and it comes along way to parity with Visual Studio, but is not quite there. There are too many fundamental plumbing needs that are not yet supported in the environment and for me Java as a language seems, and this may sound funny but ‘Stale’ ….

I have also been able to do quite a bit of SalesLogix web development over the last year and since 7.5 the development has gotten much better. I believe that this CRM product is going in the right direction. Through the next year I hope to be able to provide not only development services but also work on product evangelism with videos, and some training offerings. Over the next year I also hope to dig deeper into the core and understand even more of the infrastructure and how to extend the product more and more including SData and Process Host.

The one thing that I had a problem starting over the last year was custom software/add-on’s. For the better or worse I was always on an external engagement and worked quite long hours that when I was complete I just wanted to spend some time with my family. I am hoping to kick off several projects this year, including creating a SDK/Library for SalesLogix integration. This project will start shortly as I have several engagements that could use this shared generic capabilities.

I also was quite lax on my blogging, and I had hoped to start to create how-to-videos. I hope to do better in 2009 but only time will tell if this comes occurs.

I am writing this blog as I get a notebook setup for a business trip to the UK, leaving this afternoon and from all indications it seems 2009 is going to be an interesting year.

– Mark