A.D.D. Man to the rescue...
OK, so quite a bit to talk about for this week. Changing direction again on the XP based approach to V5 of Veronica's application, some talk about the 2 apps I had downloaded to help me with the project and a potential WP7 project I can do on the side.
First, I think my objective with the XP project was a little misguided. More in that I don't think even being successful will get me anywhere. I still think we could benefit from a more formal process in the work place as our current process is basically the definition of informal, but it would be a tough battle to win and require me to shrug off some flattery which I'm neither good at receiving nor offloading. Basically, they purport to adopt some very informal variation of the Scrum methodology, which I wasn't incredibly familiar with until after my last post where I proceeded to educate myself. To be honest, Scrum seems to be less formal than many of the other Agile methodologies to begin with as it leans heavily on the assumption that you have some completely bitchin' developers in your employ (hence the flattery). Though I think it also assumes the developers are more intimate with the subject than is the case with the current project. You can't expect the developers to catch the design flaws when they haven't been given the time or material required to understand exactly what the project should be.
Still going to stick with it for the V5 project, just going to rush myself a little less and give myself a little more leeway in how hard I stick to traditional XP. As I noted last time, there are a lot of components which are heavily aimed at group development, and the expectation also seems to be that it is being employed to tackle a large scale problem. Neither of which applies to me. But I do like the prospect of writing the user stories, converting those in functional specs and then writing automated tests I can run against the expectations discovered in the user stories and functional specs. Having some sort of a formal process for my development should be helpful, but only time will tell.
On the topic of V5, lets talk about some of the applications I downloaded to assist. SpringPad is awesome. That may be a bit over the top. More accurately, it is simply better than I was expecting but that is enough to get me raving about it. I had talked about choosing an iPad application so I could keep the designs on a secondary display while I was coding, all the while secretly thinking how having to type everything on the iPad would drive me batty. Turns out it is cloud application with an in browser version of the application. So basically, I can write out everything on my laptop and then view it later on the iPad.
Cloud applications are slowly getting more prevalent and when someone takes a cloud app across multiple platforms it truly becomes something that seems magical. 5 years from now we will simply mock any application that doesn't do it, but for now it is still progressive and I love seeing development out there, especially in the realm of free applications. Maybe one of these days before the topic is too mundane I will have time to start a cloud based open source project of some sort, probably a pipe dream, but love the notion.
Another reason why I'm actually sort of glad to be breaking away from the strict initial plan is that out of the all of the time tracking apps I found, the best of the crop that I could get for free was still fairly lame. It wasn't terrible, but then they mock you with the features that are available in the full version of the application which was a ludicrous $10. I'm not paying Apple $100 so I can save myself $10 by writing a better time tracking application, so I'm happier to walk away. If time tracking apps are such a lucrative business I may have found my first WP7 phone app to write :)
Also, been thinking about the Linq to NHibernate library. With my last couple of applications I have basically been building an API that allowed me to specify a query in text and send the parameters and have that return the data set... which is fine in general in that I can build really any query I want client side and have it executed server side with a single method per class I want returned.
But a string based query isn't validated until it is called, even then, sometimes you won't an exception until you try actually using a specific parameter. While not perfect, Linq is part of the compiled code and most query errors will be caught at compile time. It also still allows me to specify just about any query I want client side to be executed server side, and we may be using it or some home brew equivalent in the office shortly and I always love being at least half a step ahead of the curve. Real value remains to be seen, but one way or another, it is a good skill set to have with my background quickly becoming very much based in .Net.
Anyway, that is all the ranting I want to do for tonight. Later.
Alex.
First, I think my objective with the XP project was a little misguided. More in that I don't think even being successful will get me anywhere. I still think we could benefit from a more formal process in the work place as our current process is basically the definition of informal, but it would be a tough battle to win and require me to shrug off some flattery which I'm neither good at receiving nor offloading. Basically, they purport to adopt some very informal variation of the Scrum methodology, which I wasn't incredibly familiar with until after my last post where I proceeded to educate myself. To be honest, Scrum seems to be less formal than many of the other Agile methodologies to begin with as it leans heavily on the assumption that you have some completely bitchin' developers in your employ (hence the flattery). Though I think it also assumes the developers are more intimate with the subject than is the case with the current project. You can't expect the developers to catch the design flaws when they haven't been given the time or material required to understand exactly what the project should be.
Still going to stick with it for the V5 project, just going to rush myself a little less and give myself a little more leeway in how hard I stick to traditional XP. As I noted last time, there are a lot of components which are heavily aimed at group development, and the expectation also seems to be that it is being employed to tackle a large scale problem. Neither of which applies to me. But I do like the prospect of writing the user stories, converting those in functional specs and then writing automated tests I can run against the expectations discovered in the user stories and functional specs. Having some sort of a formal process for my development should be helpful, but only time will tell.
On the topic of V5, lets talk about some of the applications I downloaded to assist. SpringPad is awesome. That may be a bit over the top. More accurately, it is simply better than I was expecting but that is enough to get me raving about it. I had talked about choosing an iPad application so I could keep the designs on a secondary display while I was coding, all the while secretly thinking how having to type everything on the iPad would drive me batty. Turns out it is cloud application with an in browser version of the application. So basically, I can write out everything on my laptop and then view it later on the iPad.
Cloud applications are slowly getting more prevalent and when someone takes a cloud app across multiple platforms it truly becomes something that seems magical. 5 years from now we will simply mock any application that doesn't do it, but for now it is still progressive and I love seeing development out there, especially in the realm of free applications. Maybe one of these days before the topic is too mundane I will have time to start a cloud based open source project of some sort, probably a pipe dream, but love the notion.
Another reason why I'm actually sort of glad to be breaking away from the strict initial plan is that out of the all of the time tracking apps I found, the best of the crop that I could get for free was still fairly lame. It wasn't terrible, but then they mock you with the features that are available in the full version of the application which was a ludicrous $10. I'm not paying Apple $100 so I can save myself $10 by writing a better time tracking application, so I'm happier to walk away. If time tracking apps are such a lucrative business I may have found my first WP7 phone app to write :)
Also, been thinking about the Linq to NHibernate library. With my last couple of applications I have basically been building an API that allowed me to specify a query in text and send the parameters and have that return the data set... which is fine in general in that I can build really any query I want client side and have it executed server side with a single method per class I want returned.
But a string based query isn't validated until it is called, even then, sometimes you won't an exception until you try actually using a specific parameter. While not perfect, Linq is part of the compiled code and most query errors will be caught at compile time. It also still allows me to specify just about any query I want client side to be executed server side, and we may be using it or some home brew equivalent in the office shortly and I always love being at least half a step ahead of the curve. Real value remains to be seen, but one way or another, it is a good skill set to have with my background quickly becoming very much based in .Net.
Anyway, that is all the ranting I want to do for tonight. Later.
Alex.
Comments
Post a Comment