What I really really like about Google App Engine (GAE) is the whole Platform as a Service (Paas) approach. As a developer I really couldn’t care less about how many instances (virtual servers) are running the site or what configuration they have. I certainly don’t want to be on call 24/7, ready to manually start up new instances in case I get slashdotted. GAE just runs your application and scales when needed with your set budget as the only real limit. So upload your website project and relax.
Google provides a great dashboard that shows usage stats and costs about all metrics that count so you can optimize and lower your costs. They even offer a pretty high volume of free capacity which is great for trying out new projects/products. If it was a .NET platform I wouldn’t use anything else, but alas it’s not – it’s for Java (JVM) and Python only (although it does support anything that runs on JVM, like JRuby).
Amazon Web Services (AWS) is a Infrastructure as a Service (Iaas) so you have to manually start up new instances or set up a small network of AWS-services to do it for you. Windows Azure is even worse since there’s no infrastructure support to build the automated monitoring on.
I see it as a great business opportunity to abstract AWS into a PaaS, and provide platforms for various website technologies. Especially ASP.NET and PHP.
It’s not in many people’s interest, but being able to export my CV from LinkedIn to wherever would be perfect. As a consultant I have to send my CV around and people like to rebrand it as they pass it along. For this, Word works quite well because that’s what they’re used to. But I have more experience than I should put in a particular CV, so a checkbox for what I want exported would be the ideal.
There’s a microformat called hResume which could work as the intermediate format during transfer between CV databases. Either way I’d like CV websites to get it together and support one import/export format so I can keep my CV updated in one place and send it to where it needs to go.
This summer I visited a friend that had started his own game development studio, WhiteOut. They’re only a few people, but it reminded me of the DICE office where I once worked. I also started thinking of another friend that had driven his own incubator.
The idea would be to create a place where small independent game studios can sit together, being small and independent but still enjoy the luxuries in office-terms that bigger studios can afford.
I contacted an office hotell and Riksbyggen who controll most buildings in town. It’s simply to expensive, even when renting a large space. It would have to be subsidised somehow. If a benefactor could be found, these places could be started in every major town in Scandinavia. Each project could pull a little, but much needed, PR to other projects in the building. I think the atmosphere would be awesome and people would really thrive day.
Maybe some day…
One of the greatest gaming inventions of recent time is Achievements, IMHO. Wikipedia describes it as “a meta-goal defined outside of a game’s parameters”.
My friend Karl showed me the git achievements project. You are awarded “Achievements” based on what you do in the version control system. Some examples:
“Apprentice Seamstress: amended a commit with git-commit –amend.”
“Apprentice Socialite: pushed a branch to a remote repository using git-push”
“Apprentice Stone Mason: Added files to the index area for inclusion in the next commit with git-add”
That’s a great idea! It can be used to incourage best practices and company policies. It could even teaching fundamentals of version control management in a fun way.
I do prefer SVN though, and there can probably be some money made on MS Team Foundation Service.
The achievements of each employee could be shown in the company intranet, or even on it’s public website.
One of my ideas is checking for potential bugs in browsers by analyzing the HTML and CSS. One approach to build up all the rules is based on outsourcing, which requires funding. Can it be worth it?
Yes, I think so and I think Freemium is the way to go. If it’s crowdsourced then the free version has to feel like a complete product, as the contributors will most likely see it as the payoff of their work. If it’s outsourced then the free version can be a bit more limited.
The Free part
A website service. Your site must be online and you enter your webbadress into a textfield, click a button and the service will crawl through the site applying all the rules. It would have to limit itself to only the entered domain, but could also be limited to the number of levels it will follow links. If crowdsourcing was used then the service would probably not have the level limit.
The Premium part
If the website service is level-limited, then a subscription modell would unlock that limitation. Otherwise I think the most money can be made from plugins to various development tools that big corporations would use. Plugins to IDE’s, such as Visual Studio, so that webdevelopers can check for potential bugs as a part of the build-service or on command. And Plugins to deployment and/or build tools, such as TeamCity. Pricing could be lowered on larger builk orders, or cheaper for smaller teams that have less money.
A subscription model could be worked into this as well, as the rules need to be continously updated (like an anti-virus program) to be really usefull.
There could also be tiers within the pricing and functionality of the tools using the rules. Such as a Pro version that supports configuration of various parameters.
I like tools like StyleCop and FxCop. When I was “pair-working” with our resident CSS master I noticed how he could determine what was wrong, or would be wrong, just from looking at the markup and stylesheet. “Block elements inside block elements” and such. The broken box model in Internet Explorer 5 is legendary, if you’re using width and padding on something it probably won’t look like you wanted it too.
I believe you can determine possible rendering bugs in various browsers through static code analysis and applying a (giant) set of semantic rules. You could have this as a step in your deployment process to warn you that some pages might look incorrectly in certain browsers, so you can optimize your tests. The real problem is collecting all those rules.