What a weekend. Much to the chagrin of my beleaguered girlfriend, I signed up to be part of Startup Weekend here in Atlanta. I haven't had the chance to do one of these events before and it was a lot of fun. I want to thank the organizers and the great people at ATDC for holding a great event.
For the uninitiated, a Startup Weekend begins with a series of business idea pitches. This has to be a new idea that you haven't worked on before (no code, no design, etc.). After the pitches (2 rounds) you join a team to help build a business proposal over the next 54 hours. This usually entails a prototype, a business/marketing plan and a 4 minute presentation at the end of the event.
I had the great experience to work with a great group of people on ReleaseQ. I was drawn to the team as I liked the business proposition. We worked really hard on the prototype (or Minimum Viable Product) over those days and came up with something that was workable. At the end of the three days, the teams (there were 13 teams this time) are judged on a 4 minute pitch, and 3 minute Q&A with real investors/VC/angels. We didn't win (or even place) but we did get a startup off the ground. I came into this with the hope to just have fun and be able to contribute meaningfully to a team. I know the guys over at ReleaseQ will take this idea to the next level...I just wish I had more time to contribute.
But there is a fly in the ointment. I've hung around the Startup community here in Atlanta before (not as much as I'd like, but a bit) and this even cemented my observations. As I listed to different ideas and talked to different people at the event, it was clear to me that there isn't much Microsoft technologies represented. Rails is clearly king here still, but PHP and Java were well represented too (as were Obj-C for the iPhone prototypes). Realizing this was the case, I had decided going in to find a team I thought I could contribute to but focus on helping entirely on the front-end with HTML/CSS/JS. I thought, it doesn't matter what the back-end is...I'll just play in the UI.
As we build the project, I suggested we use a handful of libraries that have become pretty important to the UI work I am doing: KnockoutJS, AmplifyJS, Twitter Bootstrap, et al. We were able to prototype the UI pretty quickly and had something assembling a working product on the front-end very quickly. For a web project, this made our life very easy. I was surprised that some of these the other team members hadn't heard of but I love teaching so I did take a chance to walk them through how KnockoutJS was helping us out so much.
I was watching the Java guys build the back-end to the solution. While we had some hiccups working with Google App Engine, they were able to get it running by demo time. But watching them and hearing other teams and their Rails or PHP work made me think about the state of Microsoft tech. Was the MS stack really a problem, or was is that these folks just didn't have much exposure to them? It's hard to say. There certainly was a huge number of Macs and anti-MS sentiment was heard here and there (not a lot but it was noticeable).
I will say that my Surface was well played with my the attendees as people were genuinely interested in the form factor (and overall it got very high marks).
A couple of years back I took a few weeks to learn the basics of Rails (I'm not even well enough versed in it to speak intelligently about it) but I was trying to understand how it worked so I could evaluate its use on a product I was building. I came away from that believing that Rails is a great product...and when stacked up against ASP.NET Web Forms, its hard to beat. But I also came away from that knowing that with ASP.NET MVC and Code-First EF, I could build the back-end of a system really quickly and efficiently. Now I think with SignalR, WebAPI and other MS-driven projects, that you can build great solutions...quickly with MS tech. At least I could be as productive as I could be...knowing that I know the MS eco-system (e.g. C# versus learning Ruby). I think the playing field is much more level now when it comes to that. So why isn't a player here?
I don't exactly know but I do notice that the two communities are very segregated. As most of you know I do a fair number of user groups and other community events. The Microsoft developers seem to limit themselves to only MS-specific events. Some of this might be proximity (e.g. MS is stronger in the big enterprise space; whereas Rails, NodeJS and PHP are stronger in SMB) since many MS customers are in the north of the city; and the startup community seems very centered around downtown and the universities.
I'd also like to do what I can to help get a lot of us that are using MS tools to the next Startup Weekend. It's a lot of fun and having more of a presence at these events will really help spread the word that we're able to get a lot done and maybe even end up in a great new startup.
Thanks to Peter for a great suggestion to list some of the great groups. Here is a quick list:
If you're a startup in Atlanta, you should seriously think of joining ATDC at Georgia Tech. Lots of great resources there:
Feel free to drop your own great resources that I don't know about in the comments.
|Using Visual Studio Code for ASP.NET Core Projects (new)|
|Implementing and Securing an API with ASP.NET Core (new)|
|Building a Web App with ASP.NET Core, MVC6, EF Core and AngularJS|
|Building a Web App with ASP.NET5, MVC6, EF7, and AngularJS (Retired)|
|Best Practices in ASP.NET: Entities, Validation, and View Models|
|Front-End Web Development Quick Start|
|Lessons from Real World .NET Code Reviews|
|Node.js for .NET Developers|
|Application Name||WilderBlog||Environment Name||Production|
|Application Ver||188.8.131.52||Runtime Framework||.NETCoreApp,Version=v2.0|
|App Path||D:\home\site\wwwroot\||Runtime Version||.NET Core 4.6.00001.0|
|Operating System||Microsoft Windows 6.2.9200||Runtime Arch||X86|