jump to navigation

iPhone SDK, this is it. March 7, 2008

Posted by vinnyt in : Apple, Computer Science Theory, FreeBSD, GPS, Mac, Mac Apps, Programming, iPhone , add a comment

I have been developing applications for mobile devices going on about 6 years now. I started out developing applications for a major medical information company here in Kansas City by the name of Cerner. Our platform was PocketPC, and from a development stand point it was nice, not that bad, but just not that powerful. There where limitations on the device that we encountered and had to overcome on a near daily basis. In the end however we successfully created a suite of applications that is in use today and doing quite well. My role was in this case to build most of the low level foundations that where used by the other developers. This sounds simple but frankly speaking it isn’t I had to in most cases devise from scratch many things that in my mind should be facilitated by the OS, but in pocketPC at the time they where not there.
I next moved on to PalmOS. I worked for a company that was targeting the trucking industry. Palm OS was about as bare bones as one could imagine, but it allowed for those of us interested in computer science and why we optimize our code a unique opportunity to explore that side of our skill set. Translation, the devices where very underpowered and so everything had to run as efficiently as possible to ensure that the user experience was not compromised. The result was we abandoned the projects and platform because well the target audience didn’t see the use and it would not fit in their business and second the applications we created where so complex they would be unusable.
Having developed on both of these there is one major problem that both devices share: designing a usable UI is extremely difficult. The stylus interface is terrible, and the screen is not big enough to build anything that needs large amounts of data. Next, each OS is very limited. Most of the applications I wrote needed to be asynchronous and networked. This meant multiple threads of execution and network connectivity when it was present. Let me just say this worked some of the time, and usually, when you did one thing you got locked out of something else. The last application I wrote for the mobile platform was on a pocketPC phone I carried for work. I used .NET and actually in very few lines I produced an application that connected to a bluetooth GPS downloaded position data and when a network became present the data would be uploaded to a web service where it was rendered(http://vinnyt.org/location/v3/) this worked pretty well but I ran into the same headaches I hit before network didn’t work all that well and the multi-threading was poor.
I firmly believe that the iPhone will solve these problems and it is going to be the future of mobile computing. To start with the OS is Unix under the hood this is hands down the future of computing. It has been the past and I believe that in the years to come it will continue to advance and evolve. With it you get multi-threading that will scale, you get robust networking and a rich API set that will take care of most of the problems that we as mobile developers encounter. The iPhone UI is very intuitive and with a bit of forethought the UI constructs provided will lead to some very interesting and great applications. I believe that in the next few years we are going to see the market share of this device expand nearly exponentially… Mark my words.

Do It yourself GPS tracking October 29, 2006

Posted by vinnyt in : Computer Science Theory, GPS, Programming , 1 comment so far

I’m starting a series of articles on a recent application I’ve built to create an application I’ve created called “Where’s Vinnyt.” The name of the application clearly is a sign of my vanity.  However, it is one of the more interesting spare time pieces I’ve created, and think it could be very interesting to anyone that has any interest in the fields of GPS, near to realtime tracking, and System integration.  My interest in GPS arose some years ago when I borrowed a GPS navigation system from a friend of mine.  I quickly discovered that not only did this system provide a fun and interesting means of getting around the city it exposed an interface that I as a programmer could access and leverage for my own fun.  I will breakdown my aritcles as follows.  First accessing the GPS, what data do you see, how do you get to it, and how then do you use it.  Second data transmission and storage, how do I take data from where I am in the real world and store it and move it for use later.  Finally, integration with Google Maps ( although this is tracking the data is not anywhere near real time, and so I think that let’s me off the hook.)  Please check back I’ll be creating my first post in the days to come.

Using .NET without IIS October 14, 2005

Posted by in : Programming , add a comment
I’ve been developing applications in C and C++ now for probably about 10 years. It has only been in the last 7 years that I started developing C++ applications for Microsoft Windows based computers. First and foremost I’m going to say that in no case would I ever make an effort to developer server grade applications on Microsoft Windows. Windows makes a decent platform for the client, but frankly their server platform leaves a lot to be desired. So as of late there has been a massive push from Microsoft to support their new .NET( dot Net ) framework. If you are reading this then you probably have a good understanding of what .NET is and your looking for a way to optimize your .NET development with out using IIS. I am a very big fan of the PHP/MySQL development model, and I’ve found that it scales greatly and using FreeBSD as your serving platform you can have security too. So I was given the task of porting an application from C++ to .NET. My C++ application talked to several PHP pages that I had created and the logic in those pages had been solidified years ago and had required no recoding up to this point. So now with .NET direct access to these same web data sources was possible, but with the addition of a little overhead I could open up the gateway to my application quickly and easily.

So the trick is how to effectively expose existing PHP code with out a significantly modify your code. As of late I’ve really began focusing on the object oriented aspect of PHP. The framework they’ve developped has become quite robust and is really alowing for very clean and efficient designs. So here’s where the trick begins by downloading this SoapDiscovery Class. You then create a file that sits infront of your existing class, this file will look similar to the follwing.

setClass( “ClassA” );
$servidorSoap->handle();

}
else {
require_once “SoapDiscovery.class.php”;

$disco = new SoapDiscovery(’ClassA’,’soapClassAManager’);
header(”Content-type: text/xml”);
if (isset($_SERVER['QUERY_STRING']) && strcasecmp($_SERVER['QUERY_STRING'],’wsdl’)==0) {
echo $disco->getWSDL();
}
else {
echo $disco->getDiscovery();
}
}

?>

This looks at the incoming request and will either actually handle the call to the method or produce a WSDL suitable for use with the .NET development environment.

Wordpress extension August 23, 2005

Posted by vinnyt in : Programming , add a comment

So I’ve created this script that integrates with wordpress. I have a project going that uses Easy Moblog. The cool feature of Easy Moblog is that you can post from an email account. Basically in the administration you give it a list of email address that are allowed, and then any emails received from that address are posted to your blog. I’ve created a perl script that does the exact same thing but for wordpress. It has a list of known email addresses, then periodically checks an account and then posts that to your blog. I’ve included features for posting images and everything, my next task will be to extend this to take emails from a cell phone and post those as well. The image below was attached to this message and posted.

This is basically a thing for me to have some fun with so I’ll see what kind of mileage I get with it, and hopefully I’ll eventually make it freely available and give it to the opensource community.

GPS update July 27, 2005

Posted by vinnyt in : Programming , add a comment

I’ve completed the GPS project for the win32 fat client. The program was designed as previously stated, 2 threads one reader and one writer and a non-locking queue shared between the 2 threads. So far all is well…

Starting on my GPS project July 20, 2005

Posted by vinnyt in : General, Programming , add a comment

So,
I’ve had this idea now for a couple of years. I have been trying to build a real time tracking system for myself similar to Tracker watches. Early on I built a version that used Microsoft Roads & Trips, but this required a fairly heft connection to the Internet, as it generated a picture on the computer I was carrying with me and then uploaded that to my website. Frankly the feature set that I was able to create using this technology was less than desirable. So with that attempt working. I knew that what I wanted to create was possible, and it would just require me to dig a little deeper. A couple of years passed, and I bought a GPS and really began exploring the technology. I can now identify pretty much every NMEA sentence, and can almost convert the numbers in my head. Up until google maps came out I had been exploring how to use mapquest and the like. They have a simple interface, but every attempt I made at trying to figure out how their maps worked ended up in failure. So then Google maps was released, and within a couple of months I along with so many others figured out a way to lojack my way onto the map. The early incarnations of this software worked great, excerpt for the fact that every time Google improved their maps I ended up having to hack my code to get it working again. So luckly for all of us out there Google did us mappers a tremendous favor and produced an API so we wouldn’t have to fight every time they made a change. So my hat is off to Google for that. In creating this I now have all the tools I need to build my application. As it stands now you can play back journey’s I have been on by clicking on the “Where’s Vinny” link. What I have done thus far is simply carry my lap top and my garmin with me and using Hyper Term recorded the NMEA sentences, and then uploaded those to a data base when I had internet connectivity. Over they next couple of weeks I’m going to start spending more time with this application so that I can finally realize my goal of real-time tracking.

First post of a new generation July 6, 2005

Posted by vinnyt in : Computer Science Theory, Programming , add a comment

You can now track in near real-time my location. Where’s Vinnyt

The internet phone service, provided by different telecommunication sectors is very feasible for the customers who may use the ordinary phone for broadband phone calls in the very cheapest rates. There is a need of a complete set for voice mail, voip phone adapter and caller ID to have direct accessibility to the broadband internet voip. The most leading company of broadband phone services is known as vonage. The wireless phone connection is very suitable with the different phone plans and services to ensure the quality of services by providing all necessary answer via voip faq.