PhotoSynth of an elk-herd at Rocky Mountain National Park
Friday, October 31, 2008
Thursday, October 30, 2008
AT&T had at one point made WiFi access to the Internet free via its 1000s of hotspots across the country. But within a few days they had rescinded the offer.
Today, I received an email from AT&T that rolls out free wiFi access to all iPhone customers.
Here is the link to the page on AT&T http://www.wireless.att.com/learn/internet/wifi.jsp.
And here are the instructions on how to go about accessing WiFi internet from these hotSpots.
Activate Wi-Fi from the settings icon on your iPhone
Select "attwifi" from the list of available networks
Enter your 10-digit mobile number and check the box to agree to the Acceptable Use Policy. Tap 'continue'
You will receive a text message from AT&T with a secure link to the AT&T Wi-Fi hotspot. You will not be charged for the text message.
The SMS link will only be valid for 24 hours at the location it was requested. Another request must be submitted when using another hotspot location.
Open the text message and tap on the link for 24-hour access to the AT&T Wi-Fi hotspot
Wednesday, October 29, 2008
Eval is used to bind to UI item that is setup to be read-only (eg: a label or a read-only text box), i.e., Eval is used for one way binding - for reading from a database into a UI field.
Bind is used to bind to UI item that is setup to display as well as edit values (a text-box that is not read-only, combo-box, etc). Thus Bind is used for 2-way binding - for displaying data from the database as well as saving data to the database.
An interesting tidbit: The Eval method is found in the TemplateControl class. The Bind method, is not a true method in ASP.Net. It is used as a compiler directive, where the compiler upon encountering a Bind method will actually generate an Eval statement for you as well as another statement that pulls the value out of the control and provides it for populating to a database.
This is the reason that you cannot use arbitrary methods in your Bind (or surrounding your Bind call).
Bet you did not know that!
Tuesday, October 28, 2008
Ever wondered what the address of a certain location on a map is? The process of converting a map location (latitude, longitude) to an address is called “Reverse-GeoCoding”. (Geo-Coding is the process of taking an address and converting it to a latitude,longitude value so as to plot it on a map).
On October 22, Google added classes and methods that allow you to perform reverse geo-coding (via GoogleGeoDevelopers).
Here is a sample website that I created that shows reverse geo-coding at work.
Monday, October 27, 2008
I have played with the application a little bit and the implementation is flawless. The use of multi-touch makes the app fun to use. The orientation of the device is used to determine the tilt of the globe and is again fun to use, but I found that I had to turn it off and use the multi-touch interface to perform tilting. It is awesome that Google is still releasing great apps for the iPhone, even though they have their own platform (the Android) now.
(Or how to replace the CommandField text within a gridview)
When using an ASP.GridView, one uses the "Select" command-field to provide the functionality for selecting any record displayed in the GridView.
But what if you don't want to dedicate a column to just say the word "Select" and instead you would like to use one of the database fields as the select link. As an example my GridView displayed a list of people. Instead of having a Select link, I wanted people to be able to click on the person's name and have the record be selected based on that click. It would be cleaner and would save some real-estate.
One would think that it would be possible to set the Text property to EVAL(uate) to a DB field. Well that doesn't work! And you will need a work around. The easiest way to do this that I have found is to use a TemplateField with a LinkButton field within it.
Here is the example code for the ASPX file:
<asp:TemplateField HeaderText="My first header"> <itemtemplate> <asp:LinkButton id="MyLinkButton1" runat="server" Text='<%# Eval("DB_FIELD_NAME") %>' CommandName="Select"></asp:LinkButton> </itemtemplate> </asp:TemplateField>
The above code will create a link using the text from your database source's field "DB_FIELD_NAME". When you click on the link it will behave just like the normal "Select" button because the attribute "CommandName" has been set to Select.
Now all you need to do is create the "SelectedIndexChanged" method in your code behind file and hook your GridView's SelectedIndexChanged event to this method.
The CommandName property is available on all controls that have been derived from WebControls.Button class. (Which include: a command button - Button control, a hyperlink-style button - LinkButton control, and a graphical button -ImageButton control). In my example I have used the LinkButton Control. You could change the look of your column by using any of the other 2 controls.
The CommandName property is very versatile and can be made to do other actions by setting it's text to "Select", "Edit", "Sort", etc. In addition you can handle a custom action by hooking to the "OnCommand" event. Finally - these button controls have a "CommandArgument" property, the value of which is passed along to the OnCommand event's method via the "CommandEventArgs" argument.
Friday, October 24, 2008
Thursday, October 23, 2008
Here is a table that summarizes the endorsements of various organization in Colorado for the issues on the ballot this year for Colorado.
You can download the PDF version from here.
The endorsements of the various groups that have been tabled above are current as of October 20, 2008.
Tuesday, October 21, 2008
In a previous post (link) – I had posted a blank sample ballot that listed all the issues that are up for voting in this year’s election. With exactly 2 weeks left for the elections, I decided I needed more help to determine how I should vote on the vast number of issues that have been put on this year’s ballot.
For my research I looked up the Colorado Voter’s Blue Book. In addition I tried finding as many opinions/endorsements from other groups in Colorado. I tried finding a wide variety of groups so as to be able to find all the reasons that I might vote for or against an issue. So included are opinions from the Democratic party, the Republican party, businesses and newspapers as well as some other blogs.
Update (Oct 24, 2008) : I have added one more tool to help you decide on how to vote. This one is a table that summarizes the endorsements of various organizations for the different ballot issues – link.
Sunday, October 12, 2008
I did not find a cheat sheet (sample ballot) anywhere online similar to the one that can be found in the Colorado Voter Blue Book that was mailed to our homes. The only ones I found are ones which were filled in by different political groups with their explanation of why they wanted you to vote a certain way. What I wanted is a blank form that I could fill in as I got more information regarding the different measures that are up for vote this year. So I created one. This one is blank and has a place for you to fill in whether you want to vote yes or no. In addition, there is a small area to add notes. Finally, on page 2 I have tried to add a few links. The first few links are to general resources (such as Colorado State election center, where you can read the text in each of the measures). The last few are links to different groups and their opinions on each of these measures. I have tried to find both Democratic and Republican opinions as well as business links. They all provide good summaries on each of the measures and can be useful in making up your mind on how to vote on these issues.
Bottom line, don’t vote on measures a certain way just because that's what an ad says or that’s what your political group tells you to do. Research for yourself, you will most likely find that you might vote on certain issues just like your party does and others just like the opposite party.
This year’s ballot is long and complicated, so it will be useful to take this form (filled out, of course) with you to the voting center.\
Update: October 22, 2008 – I have a cheat sheet with my opinions and a summary of the endorsements of various organizations in Colorado. It can be useful in making up your mind.
Update: October 24, 2008 - I have added one more tool to help you decide on how to vote. This one is a table that summarizes the endorsements of various organizations for the different ballot issues – link.
The following links are available in the Voter Cheat Sheet.
- Colorado Elections Center
Provides sample ballots, side by side comparison of candidates and can customize the information based on your address.
- Voter Reminder Sheet – Denver
- League of Women Voters
- Project Vote Smart
The following links are to pages of different groups and how they would like you to vote with their explanations.
- Denver Democratic Party (Democratic)
- Colorado Small Business Republicans (Republican/Business)
- Peoples Press Collective
- Colorado Ballot Initiative
- Denver Metro Chamber of Commerce (Business)
- The Colorado Index (Republican)
- Boulder County Democrats (Democratic)
- Joshua Sharf (Republican)
- Slapstick Politics
Saturday, October 11, 2008
This is one of those products that will score high on the WAF (Wife Acceptance Factor). I have tons of wires hanging all over the house (for the ipod, for the cameras, for the phones). This product tries to solve the problem by getting rid of the wires between the power outlet and your device.
The WildCharge is a mat with multiple strips that run the length of it. You plop your device on to the mat and voila – it should start charging.
Now what is difference between this device and others that have been invented is that it has taken the low tech route and hence managed to get the product developed to a point where it has made it to the market. Until now, most wireless chargers used inductive charging to charge the device. This worked for your cordless toothbrushes, but the technology is not yet there to make it efficient enough to make it work for a device that needs more juice – such as your blackberry. Instead, the WildCharge uses metallic strips that conduct power into the device via contact points strategically placed on your device so that in almost any configuration they will make the necessary contact with the metallic strips on the pad to complete the loop and start a charging cycle.
Currently the package is available only for a couple of Blackberries and a Motorola phone. For the BlackBerry you get a sleeve which contains the contacts necessary to charge the phone. The Motorola has a much more nifty implementation – where you get a whole new battery cover – which incorporates the contact points – This makes for a much more attractive package.
I wonder, if this technology will become a standard which cell-phone manufactures will adopt and the contacts will appear on all future cell-phones.
One thing though, would be that with the current configuration, I am not sure if the phone will be able to communicate with the charging pad and let it know how much power it needs. This I think might be important if we wish to charge multiple devices on the mat, each having a different power requirement. (Unless by some miracle – cell phone manufactures did on standardizing phone power requirements – which I highly doubt in an industry that hasn't even been able to standardize the power connectors into a phone.)
Friday, October 10, 2008
This is very cool. The guy demos a method for using a video camera as an input device.
Wednesday, October 08, 2008
Google previews its implementation of Maps for the Android platform.
Now that Google has it’s own platform to develop GoogleMaps for, I wonder how much effort they will put into the development of GoogleMaps for iPhone. (Maps for iPhone currently lacks many important features, like: public transit). To me this is definitely an upsetting thought.
Check out the demo of StreetView that occurs towards the end of the video. Very, very cool and a hat-tip to the developers. Definitely makes me want to own the G1 (which will have to wait 2 years as I just got into a 2yr contract for my current iPhone).
This is the first image from the newly launched satellite GeoEye-1 that has been released to the public.
GeoEye-1 simultaneously collects 0.41-meter ground resolution black-and-white imagery in the panchromatic mode and 1.65-meter color (multispectral). This first image showing Kutztown University located midway between Reading and Allentown, Penn. was produced by fusing the satellite's panchromatic and multispectral data to produce a high-quality, true-color half-meter resolution image. Though the satellite collects imagery at 0.41-meter ground resolution, due to U.S. licensing restrictions, commercial customers will only get access to imagery that has been processed to half-meter ground resolution.
Tuesday, October 07, 2008
This demo looks very interesting. MBoxMail is an iPhone app that allows you to access your HotMail (Live Mail) account on the iPhone.
The most exciting part about this application is that it supports synchronization between the view of your hotmail account on your phone and the view of your account via the HotMail page. (Unlike the POP3 access method that I blogged about previously, where when you read or delete mail from your iPhone - the changes are not reflected on the web page).
I haven't yet had a chance to test this application as it is not yet available in the Apple iPhone App Store. I am definitely waiting to test it out.
Monday, October 06, 2008
Saturday, October 04, 2008
20 tips on starting a Start-Up, presented by Andy McLoughlin who started Huddle.net as gathered by Zack Whittaker (Student Technology Day: how to start a start-up | iGeneration | ZDNet.com)
- Take advantage of every connection possible. Regardless of how tenuous they may be, you’ll know a lot of people and they’ll all be able to help on one level or another.
- Be ruthless when doing deals; even at the very beginning. If you let people walk all over you, you’ll set a precedent from that point on and people will start taking advantage from a very early start.
- Design, build, then test and carry on with that cycle. Once a feature works, carry on with the development cycle and don’t stop or deviate until you’re ready to present the world with a product at very least beta stage.
- Be completely and utterly uncompromising in your vision. People may end up hating you because you won’t deviate from your goal but it’ll all be worth it in the end.
- Go big or go home. If you can’t convince even yourself that your product isn’t good enough, then you won’t be able to convince others.
- The way to a rich man’s wallet is through his PA. If you can, get out a copy from the library, of “The Beermat Entrepreneur“.
- Software is expensive, but it doesn’t have to be. With DreamSpark and the MSDN Academic Alliance programs which are often supported by your university or college, this makes getting hold of expensive software easier - and for free. Don’t forget, a lot is open-source as well - and by definition, open-source is free.
- Focus all your energy on getting the product great. Marketing, press and public relations can wait as they come later on. Once you’ve got a brilliant product, that’s when you can start showing it off to the world.
- Get out there! Meet up’s and events, conferences and parties are a great way to meet influential people, often those with huge amounts of cash. By meeting these people will help you get more innovative ideas and also make connections.
- Successful companies don’t have to work in Silicon Valley, although it does help. Huddle.net are based in London and are more than happy with that; nevertheless, going out there to Silicon Valley and meeting more people is an important part of keeping relationships going with different people and other companies.
- Funding gives you a little bit of breathing space. Once you get funding through from investors, that’s the time to get the staff just right. Sure, it’ll mean firing people but it also means getting to hire the best of the best.
- You can’t do all of this by yourself! Seriously, if you did then you’ll end up going potty. What do you think CEO’s, CTO’s and CIO’s are for? Spread the load, spread the work.
- Being acquired by someone isn’t a business model. If you tell your investors your main goal is to be acquired, they’ll lose faith. Just avoid doing it.
- You’ll always have more ideas than the capacity to make them happen. Sure, having inspiration and understanding is important, but you’ll have a ton of things you’ll want to include and integrate, but you can’t always make them happen straight away. Give yourself time and a plan for future releases.
- Make the company feel like a family. Why do you think Google and Facebook are doing so well? Having a “family” as a workplace makes happier employees, therefore better employees. Invite friends, family, siblings and spouses along to events - get them part of the family too.
- Keep an eye on the web, because that’s where a lot of your inspiration will come from. Mashable, Technorati, Twitter and Techmeme are great sources for information and more importantly, inspiration.
- Never lose sight of what you’re doing. If you do, you won’t survive.
Thursday, October 02, 2008
Microsoft's Anders Hejlsberg reveals the history behind one of the most common programming languages, C#, and what the future holds for C#4.0 in an interview with Computerworld.
Anders has this advice for students of software engineering:
And do you have any advice for up-and-coming programmers? I think it’s important to try to master the different paradigms of programs that are out there. The obvious object oriented programming is hopefully something that you will be taught in school. Hopefully school will also teach you functional programming, if not, that is a good thing to go look at.
Go look at dynamic languages and meta-programming: those are really interesting concepts. Once you get an understanding of these different kinds of programming and the philosophies that underlie them, you can get a much more coherent picture of what’s going on and the different styles of programming that might be more appropriate for you with what you’re doing right now.
Anyone programming today should check out functional programming and meta-programming as they are very important trends going forward.
Wednesday, October 01, 2008
The National Science Foundation recently awarded a five-year $4 million renewal grant to researchers at the University of Florida and the University of California at Berkeley for the National Center for Airborne Laser Mapping, known as NCALM.
UF was the first university in the nation to purchase and operate a survey-grade airborne LIDAR system in 1998. Researchers mounted the system in a Cessna 337 at Gainesville’s airport. Pumping out 5,000 laser pulses a second, they mapped beaches, marshes, flood zones, sink holes, highways and forests in Florida and nearby states.
The NCALM authored this good introductory article on laser scanning - http://ptonline.aip.org/journals/doc/PHTOAD-ft/vol_60/iss_12/41_1.shtml (published in Physics Today)
SkEyes Unlimited designs, integrates, and commercializes off-the-shelf LADAR systems for colorized three-dimensional terrain mapping, stabilized wide field-of-view cameras for situational awareness and teleoperation safety, and autonomous planning, navigation, and control systems for unmanned aerial vehicles.
Working in a university basement lab and a workshop in Zelienople, SkEyes Unlimited has developed a Box, Cam and Laser that has the potential to help with search and rescue missions, terrorist attack surveillance, even national defense. The Box is a state-of-the-art laser detection and ranging system. Mounted under an unmanned 7-foot helicopter, a Yamaha RMAX, it flies the helicopter while mapping the terrain below to within two to three inches of accuracy.
At $400,000 each for the Box, “they aren’t flying off the shelf,” says Omead Amidi, the lead researcher, co-founder and a research faculty advisor at The Robotics Institute. Japan has purchased several for construction site monitoring and disaster assessment and the U.S. Dept. of Defense has purchased three. The purchases are helping to keep the company going while research to bring down the price is ongoing.
Interesting papers by Skeyes:
Determining the transformation between the sensor’s coordinate frame and the robot’s reference frame. (link)
Change detection using a video camera. (link)
"We have decided to drop the non-disclosure agreement (NDA) for released iPhone software," said Apple in the message. "We put the NDA in place because the iPhone OS includes many Apple inventions and innovations that we would like to protect, so that others don't steal our work. It has happened before."
Apple today disclosed that it was dropping it’s totally lame NDA for developers. They still are trying to gag developers from complaining about apps that are not posted to the App-Store, but this development today is definitely a small step in the right direction.
Finally, there might be the possibility of iPhone developers getting together in user groups.