# Wednesday, 05 May 2010

I’ll be doing my (in)famous Scrum seminar in Bucharest, Romania on May 26th at Project Management Day, hosted by PMI and Microsoft. My talk is titled “To Scrum or not to Scrum.”

Agile project management and development methods are being adopted at many development shops.  After an introduction to the basics of  Agile and Scrum like: project planning and estimation, the Scrum Master, team, product owner and burn down, and of course the daily Scrum, Stephen, a certified scrum master, will show many real world applications of the methodology drawn from his own experience. Negotiating with the business, estimation and team dynamics are all discussed as well as how to use Scrum in small organizations, large enterprise environments and consulting environments. Stephen uses a very interactive style so participation is encouraged and there will be plenty of time for Q&A. This seminar is a jump start for preparing for a scrum master certification.

See you there.

posted on Wednesday, 05 May 2010 03:40:26 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Tuesday, 04 May 2010

About a month or so ago I showed on this blog how to connect to MySQL using Telerik's new LINQ implementation.  Today I will show you how to take it one step further and build an OData service automatically using the Telerik Data Services Wizard. Just for fun, we will also automatically add a full CRUD Silverlight application that consumes the OData service. We’ll do this all in 30 seconds!

To get started, you have to download MySQL 5.x and the MySQL Workbench and also, as my colleague Alexander Filipov at Telerik reminded me, make sure you install the MySQL .NET Connector, which is available here.  I like to use Northwind, ok it gives me the warm and fuzzies, so I ran a script to produce Northwind on my MySQL server. There are many ways you can get Northwind on your MySQL database, here is a helpful blog to get your started.

Let’s get started! First we will just build our model with Telerik’s new LINQ implementation. I will repeat the steps I showed off in this blog post. Start up the Domain Model wizard by right clicking on the project in Visual Studio (I have a Web project) and select Add|New Item and choose “Telerik OpenAccess Domain Model” from the new item list.

image

When the wizard comes up, choose MySQL as your back end and enter in the name of your saved MySQL connection.

image

If you don’t have a saved MySQL connection set up in Visual Studio, click on “New Connection” and enter in the proper connection information. *Note, this is where you need to have the MySQL .NET connector installed.

image

After you set your connection to the MySQL database server, you have to choose which tables to include in your model. Just for fun, I will choose all of them.

image

Give your model a name, like “NorthwindEntities” and click finish. Now you have a new Telerik Domain Model named NorthwindModel.rlinq.

image

Now we are going to use the Telerik Data Services Wizard to build our OData service endpoint via WCF Data Services (Astoria) and also automatically build a Silverlight client that will consume this service. The service has full CRUD capability and the Silverlight application is pretty basic, but wires up the application to the service and gives you the hooks to extend on.

We are going to use the “express” version of the Data Service Wizard and build the service and Silverlight client in less than 30 seconds! (Note: I showed how to do this using SQL Server here.) To do this, right click on the NorthwindModel.RLINQ file in the solution explorer and choose from the context menu: Data Services Wizard|Data Services for .NET 3.51 Sp1 Version 2 (Astoria)|Add to Project with new SL Client|WebApplication13.

(Note depending on which version of Visual Studio and what versions of WCF Data Services you have installed on your machine, the choices may vary.)

image

You will have to click OK to the standard “Add Silverlight Project” screen that Visual Studio gives you, but the wizard does all the work for you. When you run the application, the results are an OData service and a simple Silverlight CRUD application:

image

Enjoy!

posted on Tuesday, 04 May 2010 10:14:37 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Monday, 03 May 2010

Last year I went to Chyangba, Nepal, my Sherpa's village in a very remote section of Nepal and helped build a library for the local school. I was part of a charity effort and we raised a lot of money, a good portion from the Microsoft .NET Community. I’ll be headed back to Nepal this September and will help start a new drive to raise money for a new school building.

IMG_0490

While we were in Chyangba, Engineers without Borders started a water project. An engineer from the US, Jim, arrived and started working on bringing running water to the 60 homes in Chyangba. This is a big deal since the common water tank usually has poor water. Well, 7 months later, the project is a success. Below is the full report from Jim the engineer.

IMG_3344

 

Water is coming

We've had the system running off and on for about 10 days, but now it is completely online and serving all 56 houses.  It is also set up to serve two more houses that will be built in the coming months.  The people seem very happy and some of the older women especially are grateful to have taps in their houses.  I have a lot of kahtahs.  I'm in Kathmandu.  I arrived yesterday and leave in two days for the US.

All in all it seems to be working remarkably well.  I didn't get to measure the flow rate at every house, but the houses get 1 L between 7 and 13 seconds depending on their location relative to the tank that serves them.  It's a pretty good flow rate.  As Phula so eloquently puts it, "the people are really satisfaction with the water."

Boring Engineering Notes

There were a few bugs that we had to work through. 

1.  The pipeline from the intake to the reservoir was having low flow issues.  At times we were only getting .4 LPS down to the reservoir when we would measure 1 LPS or more at the intake.  Installing a control valve on the tank inlet and closing the air vent at the intake appears to have solved he problem.  I think the pipe was not flowing full and that caused the water to slow down when coming through some u-profiles.  Blowing into the air vent pipe at the intake would cause the pipeline to flow anywhere from 1.5 to 2 LPS for half an hour to 2 hours, but then the flow would drop to .4 LPS.  With the control valve, were are getting .83 LPS into the reservoir, which is enough water.   I measured the flow over 48 hours and it stayed constant.  I've been talking to Phula every day since I left the village he said the water is still coming the same.  

2.  The pipeline from the reservoir to PB B1 does not flow well unless the tank is full.  First we were able to fix the problem by adjusting control valves to PB A1 and B1 to keep the tank full, but today Phula installed float valves in the three tanks in Community A and he said that works much better.  He said that keeps the tanks in Community B mostly full, which is good. 

3.  We had a blocked pipe on one of the house lines--it ended up being easy to find because it was before the first tee and the first tee was close to the PB.  We never found out what the block exactly was--I presume it was mud because dirty water came through the pipe we dug up and disconnected.  After rejoining it, the water was working fine.  We have had only tarps covering the PBs as we've been playing with valves and checking flows at all the tanks.  The roofs are too heavy to be moving on and off several times per day.  That allowed some dirt to get into the tanks, which is what must have caused the block. 

4.  Phula is currently cleaning all the tanks and putting the roofs on, but it will take a few days.  We had built a rim around the water tank at each PB for the roof to fit into, but we have had some tolerancing issues--some of the roofs don't fit inside the rim because the corners aren't perfectly square, despite multiple measurements a few inches of safety margin.  The rims will have to be chipped slightly and then replastered.  It is really only a cosmetic issue; I liked the idea of rims to help keep dirt from sneaking in under small spaces between the roof slab and the top of the water tank, but it is difficult to do things with much precision here, at least with these masons.  The masons have generally refused to use levels, claiming they could eyeball it.  Some of the tops of the tanks are little sloped or uneven, and the roof does not fit snugly.  For now I think putting a tarp under the roof will be sufficient, but it is a repair job that we should address in the future.

5.  There are seven houses that are sometime affected by a weird air block.  If the tank above them is drain and then refilled, water won't flow to the houses.  However, the problem is an easy fix--the houses take their pipe outside, open the tap, and once the water comes, close the tap and put it back into the house.  The pipes enter the houses by climbing up the outside stone wall, through a hole in the rafters, and then back into the kitchen.  The people seem to prefer this to tunnelling to the mud and stone walls or foundations.  The seven houses are the five houses in Community C, one house in Community A, and one house in Community B.  The house in Community A is probably not far enough below the tank that serves it.  At only 7 meters of elevation difference, it's right at the limit of the design recommendations.   The water level in the tank adds about 80 cm of head.  However, the water flows well once the pipeline has been reset--that house gets 1 L in 13 seconds.  The house in Community B is served by an HDP pipe PB and is 12 meters below it.  The pipe tanks are small and they don't add much head to the outflow, but the pipe into that house also climbs steeply up into the house.  The five houses in Community C are more of a mystery to me:  blowing into the air vent at the PB C1 outlet or taking the pipe outside and opening the tap fixes the problem.  PB C1 is small and only adds about 40 cm of head to the outflow, but the pipes in Community C climb straight up two meters into the top floor of the houses, which is more than in most places.  All of the houses are between 23 and 29 meters below the tank, which seems like it should be more than enough to force the air out of the pipeline. However, all of the houses are affected simultaneously--it makes me wonder if there is some air block before the first tee.  There is a small U-profile of 115 cm, which seems like it should be insignificant as it occurs 9 meters below the tank, but maybe because the water level in the tank is relatively short it makes a big difference.  None of the houses get this problem when we leave the water running continuously, which we only did the last 48 hours I was in Chyangba.  I will continue to check in with Phula about it, but he has not reported any more problems.  In this case, I don't fear not hearing about problems due to the Sherpa cultural taboo on disappointing a guest; the villagers have not hesitated in the past to tell me--sometimes quite rudely--that their water was not coming.

Work Left to be Done

Right now, Phula is working on some tasks like building a fence at the reservoir and at the intake; cleaning all the tanks and putting on the roofs and making sure they fit; organizing and cleaning the tools; and backfilling the partially buried joining and tee areas (which not filled in to see if there any leaks once we got water running).  He thinks he will be finished in one week.  I left him with a specific list and I have a copy of it; he signed an MOU stating that he will email pictures for me to review before he will be paid by Pem.  I get the sense that he is doing a good job with it.  He does have some pride in the work he has done, but I think he doesn't express it when I am around because he focuses on trying to guilt trip me into getting him either more money from EWB or a visa to USA.  It's annoying and disappointing, but it's part of this game.  At least he does the work. 

Sishakhola

Due to the troubleshooting, I did not have time to survey Sishakhola.  I think an adequate survey time would be three of four days, and I didn't have the time.  It was more important to me to get Chyangba's system working well enough to where I felt comfortable leaving it with the village and Phula.  I know that may disappoint some of you and I know I said I would make the time for it, but respect that I have worked every day for 7 months straight in considerably frustrating conditions.  We really need to see how well Chyangba's system works in the long run before we start on Sishakhola and an inadequate survey would only create the same problems for Charlie that I had.  Additionally, surveying is more than measuring; when you do it, the people expect you to come back and build it the system.  I don't know what is going on with money and commitments at home and I am certainly not ready to make a commitment to Sishakhola myself.  Speaking of you Charlie, I really think you should come for a short visit first, see the village, and know what you are getting into before you spend 3-4 months here.  You will benefit a lot from what I have learned and that will make it easier for you than it was for me, but this work is difficult. 

Trip in the Fall and the Training Course

I think a trip in the fall is still very important to check on the Chyangba system and making sure it is being used properly and the people are taking care of it.  Phula and I did a one day training course the day before I left; the people impressed me with how quickly they learned, how handy they are, and that they have the patience to fiddle with valves and pipe wrenches.  They can be incredibly creative and come up with simple and effective solutions with limited resources--they made tweezers out of bamboos to clean the tap drains, for example.  While the villagers and those on the training course seem like they know how to do everything to take care of the system, I worry that they don't understand why they must care for it.  They complain a lot about their old government system--that there wasn't enough cement used or that is was a "Nepali project"--but the reality is that system worked surprisingly well, and got away with fewer and smaller PBs.  Had the pipe been adequately buried, it would probably be still functioning.  The real problem is that the people in Chyangba never took any responsibility or leadership for trying to fix the old system.  They could have easily remade roofs for the PBs from relatively inexpensive local materials like slate and wood--concrete is not always necessary.  They could also have made fences from local wood around the PBs to protect them.  What they had before was good enough that they could live with it--there was no motivation among the villagers to try to improve it.  That's what worries me about the future of this system--their lack of motivation, not lack of knowledge, skills, or resources.  I hope that between 40 days of labor from each house and 500 rupees from every house, they will value their own efforts and money and will want to take care of it.  I wish I had more time to spend on the training course, but I had to spend the time to fix the bugs in the system.  Phula will create a new water council from the training course members that has several women and fewer monkey brains--it will be important to keep working with them in the future.

A trip in the fall could focus on reviewing the training course and maintenance requirements and surveying Sishakhola.  A bigger intake and a collection chamber would capture more water and would make the flow to reservoir greater and will probably be necessary if Chyangba's spring serves Sishakhola; that could also be done in the fall.  As I keep in touch with Phula and learn more about how the system works, it may be that float valves everywhere would make it better.  If that were the case, we would need to build 5 more PBs in the fall.  I'm hoping that won't be necessary.

Jim

posted on Monday, 03 May 2010 03:10:17 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Friday, 30 April 2010

Earlier this week I wrote about how the start-up culture could be killed in Europe if some proposed financial reforms were to be enacted. In the United States last week the SEC put out a lengthy proposal for the regulation of asset backed securities. After reading the summaries and reading this blog, I discovered this part of the regulation:

“We are proposing to require that most ABS [asset backed securities] issuers file a computer program that gives effect to the flow of funds, or “waterfall,” provisions of the transaction. We are proposing that the computer program be filed on EDGAR in the form of downloadable source code in Python. … (page 205)” (Emphasis mine.)

Wait, Python? Should the government be telling us which technology to use? Isn’t this what standards and interoperability are all about? Publish a standard and then require that the software at each issuer adheres to it?

I don’t want to debate which is better: Python, Java, .NET, etc, I don’t care which platform the issuers use. Let their CTOs decide, not the government. The government should set technology standards and guidelines (which most of the proposed regulation does in fact do) but not dictate the programming language used. What if the asset backed security issuer is a Java shop? Microsoft shop? (Most are since Excel/VBA is the #1 application development platform on Wall Street.) A Rails shop? Won’t this shoot up their costs as they scramble to write new software in Python? Introduce a lot of bugs that hackers can exploit?

Seven years ago I testified in front of the New York City Council against a proposed regulation that would have required all city agencies to use Open Source Software since it was “free.” That regulation failed. Hopefully this regulation will also fail.

Technorati Tags:
posted on Friday, 30 April 2010 06:12:14 (Eastern Daylight Time, UTC-04:00)  #    Comments [2] Trackback
# Thursday, 29 April 2010

Last night Jon Stewart ripped into Apple over the lost iPhone I blogged about yesterday. This is just too good.

The Daily Show With Jon Stewart Mon - Thurs 11p / 10c
Appholes
www.thedailyshow.com
Daily Show Full Episodes Political Humor Tea Party
Enjoy.
posted on Thursday, 29 April 2010 03:54:19 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Wednesday, 28 April 2010

Web 2.0 has made our world more transparent. President Barack Obama has a Twitter account, as does Communist Dictator Fidel Castro. (Britney Spears has more followers than both Obama and Fidel put together, but that is another story.) Product roadmaps are now public as is proposed legislation. The world is a much more open place.

One company that has not gotten the transparency memo is Apple. They are so secret that they sue their customers for publishing blogs that speculate what new products are coming out. The tremendous secrecy surrounding Apple has served it well and I see no reason why they will change.

That said, the saga of the lost iPhone is starting to get real ugly. By now you know the story: last month, an Apple employee lost a next generation prototype of the iPhone 4G at a bar and the person who found it sold it to Gizmodo for $5000. Gizmodo promptly put an exclusive scoop on their web site reviewing the phone.

When that review went live, Apple went ballistic and said they want the phone back. To their credit, Gizmodo gave it back, but kept the web page up. Apple was not satisfied and then sent the police to raid the Gizmodo writer’s house and the police seized computers, hard drives, etc. Apple apparently is going after the person who found the phone and sold it to Gizmodo.

California, and several other US states, has a Shield Law, or a law protecting a journalist from revealing their source. Journalists are protected by free speech and obtain secret information all the time. While the ethics of buying the phone from the person who found it in the bar is somewhat questionable, it does not break any laws since the phone was lost and not stolen. The person who found the phone tried to return it to Apple, but did not have his calls returned. (Apparently he even tried an alphabetical search on Facebook for someone to talk to, but Apple is uber secret.) When Apple did not get back to him, he sold it to Gizmodo.

Nothing Apple can do now will make the leak and product review go away. Going after Gizmodo is like going after the New York Times for publishing the Pentagon Papers, no chance they are going to beat 230 years of free speech and free press. Apple has no case there. They can’t go after the person who sold the phone since Gizmodo is protected from reveling their source via California's Shield Law. Apple has no case there either. With each legal move and police raid, Apple is looking more and more arrogant. What should they do? Take the high road: drop it and move on. Apple should also enjoy the free publicity.

posted on Wednesday, 28 April 2010 06:57:09 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Tuesday, 27 April 2010

We all remember back in September 2008 when the exotic credit default swaps and collateralized debt obligation bonds filled with subprime mortgages nearly took down the financial industry. Hedge funds also were blamed for running up the price of oil in 2007-8. Due to all of this, governments around the world are calling for financial reform.

The EU is planning on regulating the “riskier” end of the financial system. Its proposed Alternative Investment Fund Managers Directive will bring more transparency and reporting-targeting things that pose a “systemic risk” to the financial system. Sounds like a great idea, right? The problem is of course is unintended consequences.

If the Alternative Investment Fund Managers Directive is passed under its current form, Venture Capital firms will be required to disclose a lot more information. Traditionally VC firms are private for a reason and this will radically change the VC business in Europe. In addition, it will add a new cost, as much as €100,000 annually per VC firm. The AIFMD will also regulate a VC firm like a bank and force them to hold greater capital requirements. This is counter to the industry trend as VC funds themselves are getting smaller, not bigger (a consequence of being so much cheaper to start a business in 2010 then it was in 2000, or 1990.) The proposal in its current form will also require VCs in the EU to only invest in EU countries! (That is crazy!) VCs will also be required to use external custodians and independent valuation agents.

Most of the financial press skipped over that last point or just mentioned how it will increase costs. While costly, it can change the very nature of a negotiation between the entrepreneur and the VC. Let’s say that you are a startup and asking for $10 million of investment at a $40 million post-money valuation. The VC is interested to invest but thinks that you are valued closer to $20 million. What happens next is usually a give and take and a negotiation that results in an agreed upon valuation and investment structure. I have taken Venture Capital a number of times and have worked at companies that have as well, and this is the point in the process where things get creative. A lot of times, the conversation turns from an initial me vs you to a win win structure. But now, the VC firm by law will be required to get an external valuation of your company! The negotiation will never take place, increasing the me v you mentality, thus driving up valuations, and reducing the number of start ups that get funded.

European start-ups beware. Move to Silicon Valley. Thankfully the European start-up I work for took Venture Capital from an American firm.

posted on Tuesday, 27 April 2010 05:45:53 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Monday, 26 April 2010

Last week I spoke at the Great Indian Developer Summit in Bangalore, India. This was my second year speaking at GIDS, so it was great to be back. Before the event Telerik’s Team Fantastic Four set up the booth and then hit McDonalds for a Maharaja Mac. Remember India does not eat beef, so we HAD to go to McDonalds and check it out! Imagine a McDonalds without a hamburger. Totally awesome. (Though we all preferred the McAloo, a potato patty sandwich.)

image

The event is really 4 conferences in 4 days. One day each on: .NET, Web, Java, and Seminars.

On the Day 1 (.NET) I spoke on:

  • Building Data Warehouses
  • Building Applications with Silverlight and .NET (and sharing the business logic)
  • What's new in SQL Server 2008 R2

No computer malfunctions like last year, my sessions went smooth. This is rapid fire presenting: only 50 minute sessions! With so little time, I had almost no slides and went straight to demo. It is hard to show data warehousing in only 50 minutes, but I focused on star schemas and ETL and I think it went well. Other than no AC in the Silverlight talk, the rest of the day went great.

Telerik had a booth at GIDS and we gave away tons of tee shirts and did hundreds of demos.

2010-04-20 11.45.55

Day 2 was “Web” day with mostly designers and Flash people. I was able to sneak a .NET RIA Services talk in there. I just started to code, no slides at all. In 50 minutes I was able to cover items 1-4 and 8 in Brad’s blog. (I also wanted to cover 5-6, and 9-10, however, 50 minutes was all that I had!) We had a lot of people come by the Telerik booth as well. Coming home from the National Science Center where the Summit is being held, we got stuck in a massive hailstorm. To be honest this video does not do it any justice, the balls were the size of marbles.

Day 3 was Java day, so we rested and hit the Bangalore Palace to see some sights. I particularly liked the room that had lots of paintings of nudes. :) It is good to be King (or Maharaja.) I also watched a lot of Indian Premier League cricket.

2010-04-19 15.31.01

Day 4 was the seminar day and I did my “Agile Tools and Teams” session that I have done before in Pune (see the link for the downloads). I was in rare form, of course decked out in my Rugby Jersey. There was no AC hitting the stage, so I went in and stole a fan from the conference center and put it on the stage. I challenged the audience to a trivia game and asked them where “Scrum” came from. Most guessed Ken Schwaber and I said that Scrum comes from Hirotaka Takeuchi and Ikujiro Nonaka, “The New Product Development Game”, Harvard Business Review, January 1986. Just for fun I quizzed the audience on the Rugby World Cup and the Hong Kong Rugby 7s. We had a great seminar, actually it was a fire hazard since people were sitting on all the available stairs and floor.

scrum

After the event, Team Telerik went out for some pizza and headed to the airport to go home. Two weeks in India just flew by. See you next year!

posted on Monday, 26 April 2010 06:36:51 (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback