No comments yet.
No trackbacks yet.
Email opt-out: Here’s a great example of how to do it right
about 3 months ago - No comments
I came across this opt-out screen today. It’s one of the best examples I’ve seen recently of an opt-out screen done right. First, they try to fix one of the key reasons people opt out of email: they are still interested but they want less email. Then they give you the option to really just More >
DateTime values should always be stored in UTC
about 5 months ago - No comments
Developers are sometimes confused about this issue but the fact of the matter is that you should always store Datetime values in your database in UTC and almost never in a local time zone. Canyon De Chelly, Az/NM border: One of the many places where naive use of local time will cause you problems! photo More >
ASP.NET MVC 2 and the Ambiguous Match Exception for Action methods with different signatures
about 5 months ago - 3 comments
Although you can use this technique to allow POST requests to a page avoiding a redirect this is now considered a bad practice from a usability perspective because if the user hits refresh they get the classic browser warning. You normally want to use a Post-Redirect-Get pattern: when you make a POST request, once the More >
Issues combining ASP.NET MVC and ASP.NET Web Forms in the same application
about 5 months ago - No comments
Recently I started migrating an ASP.NET WebForms project to ASP.NET MVC. Hoping to do this in phases I created a combined project that is both a webforms project and an MVC project. Routing allows some requests to go to the WebForms pages and some to go to the new MVC pages. Routing has also enabled More >
If it walks like a class, talks like a class, it probably is a class
about 6 months ago - No comments
I occasionally come across attempts to extend Enums to include additional fields. These attempts typically use Attributes and reflection to get at the extra values. I have to say I don’t like them. The most extreme example of trying to get an Enum to do something else was this article on Code Project attempting to More >
The Blog of Ian Mercer: Home Automation++
about 6 months ago - Comments Off
This is the blog of Ian Mercer, Serial entrepreneur, Digital Mapping Pioneer, Inventor of Windows Movie Maker, Microsoft Producer, HighMat, SnapTune, … Patent holder, Guinness world record holder, and founder and CEO of SignSwift, LLC, Here you’ll find my thoughts on Home automation, Energy Conservation, Programming, Operations, Entrepreneurship, Business, Startups, Quality, Agile, Optimization, .NET, Natural Language More >
Tip: getting the index in a foreeach statement
about 7 months ago - No comments
Using LINQ you can easily get at the index in a foreach statement.
SQL Server – error: 18456, severity: 14, state: 38 – Incorrect Login
about 8 months ago - No comments
Despite the error message this problem can be caused by something other than an Authorization failure. In fact, simply misspelling the Initial Catalog can cause this message to appear. I wish developers wouldn’t reuse error messages when the problem and solution is completely different.
Shortened URLs should be treated like a Codec …
about 9 months ago - No comments
Codecs are used to compress data to send over the wire, but when it gets to the other end it is decoded back to its original form for display. Shortened URLs are used to compress long URLs to send over Twitter. So why aren’t they expanded again on the other side? Why do Twitter clients More >
A great site for developing and testing regular expressions
about 9 months ago - No comments
Came across this one today and found it very handy for checking some complex regular expressions (regex) I was developing: http://www.gskinner.com/RegExr/ This alternative was recommended by a friendly recently:- http://www.ultrapico.com/Expresso.htm
Cloud computing – where’s the silver lining?
Cloud Computing - where's the silver lining?
I’ve seen several people propounding the cost savings of cloud computing as being of great benefit to startups. Most recently someone wrote “… cloud offers an amazing opportunity to reduce costs for startups”
This simply isn’t true.
It cost ~$2500 to buy a smoking hot server from Silicon Mechanics with SSD drives and under $100/month to host it at a reputable data center. Over 4 years that’s about $160/month which is less than coffee and a doughnut each day. Even if the cloud was free that still wouldn’t make it an “amazing” cost saving.
In addition, said smoking hot server, can outperform 8 large EC2 instances on any compute heavy or data intensive operation. For individual web requests with some database access it also offers lower latencies = better customer experience.
Depending on the load, cloud computing can cost more than a dedicated server and offer a worse customer experience. It’s not the panacea it’s made out to be.
The ‘correct’ reasons to select cloud computing are …
“Cost savings” doesn’t even make the list for startups IMHO and many of these same benefits can be had by running your own smoking hot server with virtualization.
The other dirty secret of cloud computing concerns the notion that you can pull together a reliable system from disparate services from different vendors. Do the math: 0.999 x 0.999 x 0.999 x 0.999 is a lot less than 0.999 and that could mean unacceptable downtime for your users.
Summary: It’s not significantly cheaper, it may be slower, it may be less reliable but it can be much more convenient.