April 2005 Blog Posts
I've spent the morning considering this, given the recent statements by Bill Gates about H1-B limitations (currently 65,000) and how this is damaging to technology companies.
There are a few differing points of view on this:
Buy USA View- There are US citizen IT workers that are currently out of work. We should make sure we've employed everyone we possibly can before we increase H1-Bs
This view, like most generalizations, is highly flawed. To make this statement you're making an assumption that all of the unemployed workers are "employable". This is not true, as companies require varied skillsets, people skills, and experience levels. I've...
Interesting find at work today. One of my developers had two asp:image controls positioned to the right and left of a button. The developer wanted on the click of an image to call the button postback. I had no idea that the GetPostBackEventReference(control) even existed until Brendan pointed me to it (thanks buddy).
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not Page.IsPostBack Then imgLeft.Attributes.Add("onclick", Page.GetPostBackEventReference(myButton)) imgRight.Attributes.Add("onclick", Page.GetPostBackEventReference(myButton)) End If End Sub
Is this "Coding Better"? Hell if I know, it seems to work though.
Well, the time is getting close now. Soon will be the official unveiling of the Easy Assets : Standard and Easy Assets : Enterprise packages. What this means for me is that I'm tightening the bolts on the application, finishing off user documentation, testing installs on any pc I can get my hands on, and redesigning my website with new marketing.
Something that many customers seem to expect you to have is a 1-3 page product datasheet that gives an overview of your company and the product. Being the marketing minor that I am, I recently dove into creating these for...
I had a post a while back that discussed my personal interviewing techniques, and how to identify "dead wood" developers in your organization. I received a lot of positive feedback on this topic and it seems many young developers were particularily interested in the application of the topic to better position themselves to impress an interviewer and get a job. Because of the success of the post, I've decided to flip the situation around and teach you how to interview an employer. Over my career, I have rarely had any difficulties finding contract or perm work, mostly because I strive to...
There has always been a mini religious war between programmers about code layout/style and when to optimize. My personal take on this has been put more weight on readability and maintainability over highly condensed, optimized code. Here's a few thoughts on this subject:
Don't optimize first
In almost all cases I have ever seen, optimizing while writing your first beta of code leads to poor readability and few gains. There are a variety of load testing suites available out there, what I recommend is to hold off on optimization until the majority of the application is complete. Then design some intelligent load...
I know I haven't been overly active lately but I'm in "Crunch Mode" for Easy Assets .NET. My ISV is taking full form now.
The application itself is stable, solid, and overall I'm just putting in a few last minute tweaks based on feedback.
The install package works flawlessly for existing sql server / msde installs. The script to download and install MSDE "painlessly" is almost there, just a few more kinks to work out.
The final (and most important task) is revising and prettying up the end user documentation! My compatriots at codebetter have been reviewing the code and Raymond is...
I keep seeing a lot of examples in ASP .NET where sql server priviliges are given to the ASP.NET worker process. A few thoughts about this:
By doing this you are expanding the damage that could be done if the ASPNET worker process was compromised. This is particularily so for those of you who give dbo rights to the worker process in your database. (You know who you are, and I have found that about half the home grown projects I've looked at are guilty of this).
If you have multiple applications with different databases that all run under the ASPNET...
Well, for anything in this article to make sense, you're going to have to read Eric Sink's latest MSDN Article. Finished? Ok then.
It was interesting to hear about the logic involved behind moving sourcegear to a platform other than Microsoft's. Where I really tuned into this article though was the discussion on MBAs and their impact on the ISV.
Virtually all decisions in a small ISV should be made with the involvement of technology person. Most decisions in a small ISV involve issues of both technology and money. These decisions are really hard.
Agreed. An ISV is a technology oriented small...
Jay had a little mini rant this morning about passwords and security. It's Friday, should be a happy day, so I'm just going to list out some rather absurd security practices I've encountered in my years of consulting and development.
A major (fortune 500) company has an ordering system that in the order table stores the entire credit card number, 3 digit security number, name, expiration date, and billing address. It was all clear text. To top this off their app was vulnerable to injection attacks.
A vendor of time and attendance software and the company I was working for broke off...
What's the difference? Here's a console application that shows one:
Dim myObject As Object = Nothing Dim toStringTest As String Dim convertTest As String Try toStringTest = myObject.ToString() Catch ex As Exception Console.WriteLine("MyObject.ToString Error: " & ex.Message) End Try Try convertTest = Convert.ToString(myObject) Catch ex As Exception Console.WriteLine("Convert.ToString(MyObject) Error: " & ex.Message) End Try If TypeOf toStringTest Is String Then Console.WriteLine("toStringTest is a string!") Else Console.WriteLine("toStringTest is NOT a string!") End If Try If...
I forgot to disable the change password/account creation for the demo build this morning. So naturally someone changed the admin password.
The database has been restored and the proper controls are disabled, so it's all good now! On a side note, if this is the least embarassing thing that happens to me this year I'll consider myself fortunate.=)
For those of you curious bloggers who have been asking to see a demo of Easy Assets .NET you can now!
This is a sample database, it gets restored frequently so feel free to play with the data all you like! Feedback is always appreciated too. ;)
I'm very pleased to report that Easy Assets .NET local install version is very close to "going gold". I thought I'd take this time to talk about the final pricing scheme I've come up with (thanks to a lot of thought and feedback from the IT community) and the importance of wrapping things up properly.
Pricing (and identifying your customers)
Originally, I was going to make only one version and have it be source included. After much time and debate though I have been convinced by my peers that many small to medium businesses (SMBs) do not have the expertise to customize...
I’ve finally gotten around to installing and trying out blogjet and I have to say that I like it a lot. It certainly is nice to not have to go to my homepage every time I want to do blogging and the interface for blogjet is clean and easy to use.
The HTML format seems to do just fine, though I still wish that some blog writer would actually give you an option to format your html with indentations ala firefox’s view source. It’s just that when I’ve been typing a long post I have dificulty finding the section in the html view...