I have been search through the lists of API out on the www.programmableweb.com. I am now wondering what all the different check boxes of information mean. The picture is a screen shot of one the lists I am talking about.
Ok I understand if you need an API key. If that Key works the way I am thinking. I am guessing it is more like a security key that matches your page up with theirs. Traffic control is important to keep your servers from being over loaded.
But if they require an account does that mean you have to pay. Or is it a way to have you just register for their site? I guess it could run both ways.
I wanted to use Shopping.com and Etsy for my individual project. Both require accounts and API keys. Now the terms of services for either of them say nothing about a fee for the service.
Does anyone have an explanation of what I should be looking for?
I’ve spent a great deal of time on programmableweb.com, searching for different API’s to try to “mash-up.” The problem is I don’t know exactly how it works, at least not well enough to plan a four way mash up past a rough visualization phase. So far, I’ve been thinking that I’d like to do something with movie or videogame ratings from metacritic.com and imbd.com and map locations out with Google maps. Also I saw that there was an API for the bluebook information on used cars. I might be able to make some kind of used car finder with Google maps and eBay/craigslist/ bluebook information.
After a discussion about API’s and mash-ups with my brother, I realized that none of these ideas are very original. And that leads to my question for this blog; how original do our mash-ups have to be? I mean mash ups are a relatively new thing, but a lot of them have been done already. I don’t want to strait up copy an existing mash up. This is my first experience with the technique, I don’t think my end product is going to get me snatched up by Google, so do I have to worry about being that original?
I also have seen two mash-ups (I think) that I think are really neat one, synchtube.com, allows two or more people to watch YouTube videos together by mashing up a chat feature with YouTube. I think this would be a great feature for GTalk. The other is funny and is sort of a mash up (again, I think) involving the combination of the same API twice. With youtubedoubler.com, one can get that eerie effect playing Wizard of Oz with Dark Side of the Moon with different YouTube videos. The example I saw, and promptly posted on my Facebook, was of an Usher song accompanied by a noisy goat.
In our class last week we were suppose to get with our groups and discuss what kind of project we wanted to do for our class project. And I think our came up with some good ideas such as Dan had the idea of a Mashup of having reservations for a sort of Lodge Resort. Using API's for location,direction,payment etc and it was a good idea but we came into a problem that we thought that we would be making up the website for the lodges we would use but soon found out that we would be using components from a already existing site or API. But we liked the idea of where we were headed.
So I wanted to research a little more about mashups and what they were, how they are made and ow they were used. So I did what most people do these days and I googled it, I found definitions of what a mashup was, types of mashups and also saw a comparison with mashups vs portals with differences between the two. I found one good site about how to start a mashup that came from Programmableweb.com. And it had a simple 5 step list of how you are suppose to:
1)Pick a subject
2)Decide where your data is coming from
3)Weigh your coding skills
4)Sign up for a API
5) Start coding
And it went into some detail of how each step would get you to start your own mashup. So this should be a interesting task and it seems like we will be using a little from each one of our past IS classes to complete this ultimate project.
For iteration 3 I decided to add Google map markers to my existing Google map. I wanted the markers to represent information about Dogs in the Pinckney area. I added the search to my existing map and was able to input searches and get the results I wanted. However, I found that the search dialog box didn’t show up when I used Firefox! I goofed with that for a long time with no solution so I decided to start over. I grabbed the code to create a map on my page then added the search dialog and that worked with both browsers. I didn’t realize, at the time, that I was using the “local search” feature, but, after I realized that fact I figured it would be good since I wanted a local search.
My goal was to have a couple buttons that a user could click to do predefined searches. In my case they would be for Veterinarians and Kennels. And, actually, that part was easy because it was a basic feature of the local search map. However, I didn’t count on this other “default” feature: “By default, when a search completes, the search results are placed on your map and they are also listed in tabular form above the search form input.” The tabular form obliterated the map points that I was trying to show.
I spent hours looking for a clue about how to get rid of the tabular result list but I couldn’t find anything. I wasn’t even sure what to call that “feature” so it was difficult to search for answers. I finally pasted one of the map URLs into my browser and found what I was looking for.
The nice thing about adding google.maps.LocalSearch() to your Google map is that it allows you to pre-load the search so you can do (in my case) an “execute('veterinarians')” or “execute('kennels')” search by clicking on a button.
// These options will be applied to the search dialog var options = {
//This text shows in the search dialog
searchFormHint: 'Click a Button or, type here!',
// This stops the initial info window from poping up
suppressInitialResultSelection: true,
//sets the map zoom limit
zoomLimit: 13,
// This suppresses the TAB LIST that obliterates the map points!
// This creates the Search Object "mySearch" with the above options
map.addControl(mySearch = new google.maps.LocalSearch(options));
// These are the onClick events for the search buttons which use //mySearch object and the execute method
function displaySearch(search_string) {
if (search_string == "vet")
{
mySearch.execute('veterinarians');
}
else if (search_string == "kennel") {
mySearch.execute('kennels');
}
} // HTML Buttons that preform a "predefined" search when clicked
This isn't a detailed description of exactally what you need but, it may give you some ideas of what you can do with Google Maps. I was very surprised to learn how much you can do to customize your map and really amazed at all the Methods and Options.
I was on Yahoo the other day and ran across some company startup news. I thought this was interesting because it appears to use google maps with mashups. The founder and chief executive of this new startup company, Rick Warner, came up with this idea while looking for a parking space in San Francisco. The company is called ParkingCarma and is based in Flint Michigan which is due to public and private funds that were made available to entrepreneurs who start new businesses in Flint.
It’s not clear if there is a cost involved with using the service because it appears to be free to view available spaces. However, the company does get revenue from ads as well as a percentage of parking fees. The article states that there is an additional fee of $9.99 a year for registered users in San Francisco and San Diego if they want to reserve spaces with their computer, PDA or mobile phone.
The service also offers parking rate information related to hourly or monthly parking and the website lists upcoming events in a few major cities which include: New York, Boston, Los Angeles, Chicago, San Francisco and San Diego. Of course, these events all revolve around the ability or necessity to “find parking”.
While looking at mashups and thinking about all that we're learning from our projects, I started to think about how what we have learned could be used in the Enterprise. Mashups are an easy low cost means to pull data together and they are a great integration opportunity. I searched the internet and found there are some greaet ideas out there. When visiting soamag.com I felt they had powerful examples. They are listed below.
• A portfolio manager making decisions based on mashing internal analysis data combined with Web-based financial and news data, • Medical researchers extending their collaborative efforts by comparing and joining public research compendiums (such as Pubmed, www.pubmed.org) with internal research databases. • A sales executive enhancing quarterly forecasting by joining local spreadsheet-based estimates with corporate application services like receivables and support history. • A finance manager using aggregated, filtered, and combined data from across divisional accounting instances for intermediate or mid-term compliance and financial reporting summaries. • A product manager connecting near-term production plans with real-time commodity prices to enhance production and purchasing decisions. • A project manager establishing a sharable 'management view' of project deliverables, open issues, and personnel billing.
The examples above would probably require some reengineering on the workflow or process side of the organization but in many cases it is necessary, especially given the pressures to save money and run businesses more efficiently and effectively. The above examples show how extremely productive a person can be by combining pieces of information as a mashup. This will make mashup developers extremely valuable and in high demand as more corporations move in this direction.
Another point I found while surfing around on this topic is the potential change in the role of IT. In a Forbes.com article Don Woods, CTO and Founder of Evolved Media, highlights that IT resources will be more like chemists watching the reaction as users develop their mashups. One example is if a user develops a mashup that adds a load to the network then IT staff should step in. IT staff should also support the development of mashups by adding their skill set for helping developers through inefficiencies.
Being in an IT role in a large corporation myself, I don't foresee this kind of activity taking shape as a whole any time soon. You saw how hard it was to turn the Titanic! It would take serious overhaul or process obliteration and of course, support from the top down to ensure adoption. Additionally, the business culture would need to change as well. Like stated earlier, the drive to run more effieciently and penny pinch may force large corporations to take a closer looks as they search for ideas to be more productive in these tough economic times. Mashups are great opportunity for them!
All of the talk about APIs and Mashups in our first class intrigued my curiosity quite a bit. While I've heard of APIs before, I have never actually used one. Obviously, my lack of knowledge about APIs means I have even less knowledge about the closely related Mashups we also discussed. Since Michelle already posted about Mashups, I thought it would be helpful to take it back a step further and post about APIs. I'm sure there are at least a few other people in this class which don't know a lot about APIs, like myself, so I figured a little research on the topic would be beneficial to many of us. The first thing I wanted to do was get a definition of APIs in order to try and understand them better.
As stated on Wikipedia.org and supported by the Free On-Line Dictionary Of Computing (foldoc.org), Pc Magazine (PCMAG.com), and computerworld.com, an Application Programming Interface (API) is "an interface in computer science that defines the ways by which an application program may request services from libraries and/or operating systems." The first thing I realized after reading this definition was that APIs are not limited to the Web. Being that our class is Web focused, and considering that Professor Drake specified them as Web APIs when he discussed them, it's safe to say that our focus will probably be on the Web APIs. Applying this definition to the Web APIs works, but re-wording it a little bit makes it more applicable to Web terms. Web APIs are indeed still an interface in computer science, but more specifically, they are a "set of Hypertext Transfer Protocol (HTTP) request messages." HTTP messages are things we encounter every day while using the Internet, even though we never actually see them happen. HTTP requests are most commonly used in the Head sections of Websites, as well as the common PHP functions "GET" and "POST" and five other less common methods. In Web APIs, these request messages are defined along with some sort of structure, then commonly expressed in XML or JSON format. Web APIs can then be combined together, bringing multiple services into one platform, and forming Mashups. This process of message requests and XML and JSON all sounds rather similar to the process AJAX uses, but my limited knowledge of AJAX could mean I'm completely wrong about this.
Now that we've got a solid definition of what an API is, the next step in understanding them is to begin exploring different examples. One of the most popular Web APIs being used these days (based on statistics provided by programmableweb.com) is the Google Maps API. This API that Google provides, allows you to embed the popular "Google Maps" service right into your own Web pages. With a little bit of javascript, the Google Maps API can be used just like Google's map service is offered on their Web page. The maps can be edited and adjusted in many different ways, allowing you to create detailed maps applications on your site like the following example Google uses to promote this API on their site.
One of the best parts of most APIs, including the Google Maps API, is that they are free of charge! Free stuff is always good!
Well since already someone already blogged about “mashups” and how to implement youtube video in your blog post, I am kind of limited in what to write. That is why I took the liberty to find some useful tips before starting this course. First as we all know we need the book, and the good news about it is that it is really cheap. I searched through the various websites to buy it and found out that one of the cheapest place is amazon. So if you still do not know the book we need or where to find it here is the link http://www.amazon.com/Head-First-Ajax-Rebecca-Riordan/dp/0596515782/ref=sr_1_1?ie=UTF8&s=books&qid=1252673493&sr=8-1. It seems that it runs for $12, which is great because all of my other books coast over a $100 each. Some of you may find that interesting, but I kind of like one tutorial website, that helped me through my associate’s degree in software engineering. They have information on every web developing language that there is, so it is really cool. They have tutorials on AJAX as well, so I am sure some of you may find that helpful. The link is http://www.w3schools.com Youtube is loaded with tutorials for AJAX as well.
I decided to do a little research on mashups after Wednesday's class. I was shocked that being an IS major I have never really heard the term before even though I knew what the concept was. Mashups are really just websites that combine information or technology from other sources into one allowing less effort from a user to find information they need. Specifically, Wikipedia defines a mashup as "a web application that combines data and/or functionality from more than one source".
The example that was given in class was explaining how we can search for homes or businesses and see them on a map instead of just getting an address. Mapping mashups are just one popular type used today. Video's are used to mash up lyrics with a related song from youtube at a site called songlyricsbook and photo's from Flickr are mashed up with twitter updates. Newspapers and news stations use RSS which allow users to choose which topics they want to read from which source instead of going to each individual site.
Mashups seem to be taking the internet by storm and I'm sure as time goes by there will be more an more websites created for the sole purpose of mashing. In fact, there is one popular site called programmable web that is strictly a mashup directory for mashup websites. The website breaks them down into categories and even offers a how - to section if mashups are something that interest you. You can also find more information on the technology behind mashups at IBM.