<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7851685393638840715</id><updated>2012-01-25T03:22:50.252-08:00</updated><category term='provisioning'/><category term='acquisition'/><category term='facebook'/><category term='ringside'/><category term='platform'/><category term='finance'/><category term='java'/><category term='connect'/><category term='php'/><category term='esb'/><category term='soa'/><category term='lucene'/><category term='projects'/><category term='game theory'/><category term='api'/><category term='open source'/><category term='stock market'/><category term='open social'/><category term='technology adoption'/><category term='configuration'/><category term='tag cloud'/><category term='web 2.0'/><category term='systems mananagement'/><category term='software'/><category term='market'/><category term='search'/><category term='index'/><category term='opsware'/><category term='audio book review'/><category term='slideshare'/><category term='code'/><category term='requirements'/><category term='architecture'/><category term='review'/><category term='hp'/><category term='social network'/><category term='investing'/><category term='presentations'/><category term='nutch'/><title type='text'>Richard Friedman</title><subtitle type='html'>Work with people who have passion. &lt;br&gt;
Organize, Design, Develop and Test to build great products. &lt;br&gt;
Enjoy coming in every day because you respect the people you work with.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-4787056870297138748</id><published>2011-09-05T14:14:00.000-07:00</published><updated>2011-09-12T06:37:47.072-07:00</updated><title type='text'>Geeks in the woods.  </title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-rYY05lxAVz0/TmWItuJCXyI/AAAAAAAAAPA/REvS2D_r-aA/s1600/Screen%2BShot%2B2011-09-05%2Bat%2B10.42.15%2BPM.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/-rYY05lxAVz0/TmWItuJCXyI/AAAAAAAAAPA/REvS2D_r-aA/s320/Screen%2BShot%2B2011-09-05%2Bat%2B10.42.15%2BPM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5649071626667581218" /&gt;&lt;/a&gt;We recently held our second annual internal developer conference, Node 2.0 -- subtitled "Geeks in the Woods" in honor of the idyllic setting deep in the Poconos. While the first day and a half was more like "Geeks in the Dark," with only backup generators, glow sticks and flashlights to help us find our way through Irene’s aftermath, ultimately the event went off with only slight modifications to the agenda and provided a lot of value to the team. I have to admit that in our darkest hours, I was ready to call it and get back to civilization, but Gavin kept pulling us to continue – and right then, dramatically, the lights came back on!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Why do we hold this event? &lt;/span&gt;&lt;br /&gt;Mostly to escape the one-hour time limit we generally maintain for office meetings. With so much going through our development pipeline at all times, it can be extremely difficult to find an extended period in which to work with the team as a whole, get everyone sharing ideas, and explore what we need to focus on to keep the team growing. So last year, Gavin spun up the idea for a developer retreat, and we jumped at the opportunity. Year One was Atlantic City -- when AC lost power! Year Two: &lt;a href="http://www.woodloch.com/home/"&gt;Woodloch&lt;/a&gt; in the Poconos, barely post-hurricane but still mid-outages.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;What do we do?&lt;/span&gt;&lt;br /&gt;As this is only our second year, we’re still experimenting and trying to optimize the schedule. This year, the consensus was that we packed a bit too much into the three days, as we tackled four distinct areas:&lt;br /&gt;&lt;br /&gt;1. Learn a new language.&lt;br /&gt;On the first day, we brought in an instructor to teach the whole team a new language we don't use day to day. We believe that more focus on polyglot is valuable to the team and pushes folks to learn new ways of doing things, and more importantly, new ways of thinking about problems.&lt;br /&gt;&lt;br /&gt;2. Hack-a-thon.&lt;br /&gt;Can't talk about what we did, other than wow! I don't think this is something you can do very often, but it’s amazing how productive our team can be on such a short time frame. The pace was intense, but the way this event brought different folks together to solve problems encouraged a ton of knowledge-sharing, in many cases between people that rarely if ever collaborate in the course of normal work. This is definitely on the table for next year’s Node, and we have some new ideas for pre-planning that will make us even more productive in 2012.&lt;br /&gt;&lt;br /&gt;3. Group Sessions.&lt;br /&gt;One of the returning favorites from Node 1.0. Last year, we split into groups to come up with problems to solve and propose how to solve them. This year, we went a different route: each group built a pitch for a new product, planned their technical approach, estimated a project timeline, and presented their proposal to the whole team (including our CEO). Some good stuff I won’t reveal here!&lt;br /&gt;&lt;br /&gt;4. Developer Talks.&lt;br /&gt;Several developers prepared talks on a variety of subjects, from deep dives into recently completed APIs to more philosophical discussions of engineering approach. Even one of our partners found their way out to the mountains to talk about their company over lunch. The highlight for me was a session on test-driven development led by one of our DBAs, an accomplished speaker, which provided some great ideas we’ll be implementing moving forward. Overall, though, we learned that the hands-on sessions brought more value than just talking.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Do you talk about the business or just tech?&lt;/span&gt;&lt;br /&gt;I gave a talk about leadership or management. Gavin explained how a focus on performance would lead to tangible benefits for the company. Jeremy reviewed product history and how it impacts our development process today. And Geoff gave insight into the business: where we’re headed and how. These are usually bookends to the day, and they serve to give context to the rest of the agenda.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;How do we bring this to the office?&lt;/span&gt;&lt;br /&gt;While we can’t always spare the time to hold similar events in the office, we do encourage the team to talk at local events, hold internal lunches to learn new things, and occasionally bring in external speakers to keep the knowledge flowing. More and more, we’re working as a team and not just a collection of individuals, and it’s been a beautiful evolution to watch.&lt;br /&gt;&lt;br /&gt;So now I’m looking forward to Node 3.0: The Apocalypse Comes. Any feedback internally and externally on ideas for the event would be welcome!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-4787056870297138748?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/4787056870297138748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=4787056870297138748' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/4787056870297138748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/4787056870297138748'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2011/09/geeks-in-woods.html' title='Geeks in the woods.  &lt;node version=&apos;2.0&apos; /&gt;'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-rYY05lxAVz0/TmWItuJCXyI/AAAAAAAAAPA/REvS2D_r-aA/s72-c/Screen%2BShot%2B2011-09-05%2Bat%2B10.42.15%2BPM.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8580375572816320169</id><published>2011-01-30T06:52:00.000-08:00</published><updated>2011-02-02T05:07:26.190-08:00</updated><title type='text'>CloudBees in the sky</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://di388e0fcqllf.cloudfront.net/images/cloudbees_logo.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 133px; height: 60px;" src="http://di388e0fcqllf.cloudfront.net/images/cloudbees_logo.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;div style="text-align: left;"&gt;I was recently asked to be part of a technical advisory board for &lt;a href="http://cloudbees.com/"&gt;CloudBees&lt;/a&gt;.  The group  included some great folks &lt;a href="http://pelegri.wordpress.com/"&gt;Eduardo Pelegri-Llopart&lt;/a&gt;, JJ Allaire, and &lt;a href="http://nighthacks.com/roller/jag/"&gt;James Gosling&lt;/a&gt;.   Thank you  Sacha and Bob for allowing me to participate with such a group.  Besides meeting with the team and getting an overview of the plans I also had some time to play with both Dev@ and Run@.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;Dev@ = Jenkins/Hudson/Nectar &lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://jenkins-ci.org/"&gt;Jenkins&lt;/a&gt;, recently renamed from &lt;a href="http://jenkins-ci.org/"&gt;Hudson&lt;/a&gt;,  is the de facto CI system in the market. &lt;a href="http://www.cloudbees.com/"&gt;CloudBees&lt;/a&gt; provides a supported  version called Nectar offered for on premise or as a service.    I  have been using it for years to help implement development process.  Currently we use it on a daily basis to build for more platforms than I can mention - java being only a very small part of it.  Today I wanted to start a build of one of my open source projects, one I have not touched in a 'VERY' long time.    This project is currently hosted on sourceforge - https://sourceforge.net/projects/blue/.&lt;/div&gt;&lt;img src="http://3.bp.blogspot.com/_7A4qtBT8llc/TUZEfpGkBQI/AAAAAAAAAMM/cXuZLuc60oo/s200/Screen%2Bshot%2B2011-01-30%2Bat%2B3.46.34%2BPM.png" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 116px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5568213299690210562" /&gt;&lt;div&gt;After setting up my CloudBees account I added a Job and figured I would use it to generate my docs.     Well it took me three times to get it right.  The first time I did not set my ANT version properly, the second time I named my target wrong but then wala a working Jenkins Job in the cloud generating my documentation for Blue.    I just wish I had this running when I was building Blue a few years back instead of constantly developing on my box and having to build ant tasks to push files to different places.  Using Jenkins in the cloud (Nectar) could not be any easier  and it would be great to see lots of open source projects participate.   (CloudBees Todo: Allow making docs and distribution files publicly available).&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;Run@ &lt;/b&gt;&lt;/div&gt;&lt;div&gt;While Run@ will be usable from dev through production I can quickly see how it simplifies life  by reducing management of  the development and testing environments.  One of the challenges in building out a development process is physically connecting the systems together to create  the outputs  you are looking for. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7A4qtBT8llc/TUkEvHrxrQI/AAAAAAAAAMc/y4oAx0hEpMY/s1600/stax%252Bci.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 205px;" src="http://1.bp.blogspot.com/_7A4qtBT8llc/TUkEvHrxrQI/AAAAAAAAAMc/y4oAx0hEpMY/s320/stax%252Bci.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5568987621783350530" /&gt;&lt;/a&gt;&lt;div&gt;A development organization can have 10's or 100's of developers implementing an equal amount of services with concurrent projects all needing to get out the door.  This can be overwhelming to think about.  I see Run@ and the concept of PAAS (platform as a service) as a building block for managing large development organizations and process.&lt;/div&gt;&lt;meta equiv="Content-Type" content="text/html;charset=UTF-8"&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;Thanks again to the team.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://twitter.com/recampbell"&gt;Ryan&lt;/a&gt; - Great seeing you again, it has been a long time.&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.kohsuke.org/"&gt;KK&lt;/a&gt;, &lt;a href="http://vivek.pandeys.org/"&gt;Vivek&lt;/a&gt;, Harpeet - Amazing what you guys are doing both technically and fighting the fight to keep the community moving forward.&lt;/div&gt;&lt;div&gt;&lt;a href="http://developer.stax.net/profile/spike"&gt;Spike&lt;/a&gt; - Glad to see you as part of the team bringing together the vision for PAAS.&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8580375572816320169?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8580375572816320169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8580375572816320169' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8580375572816320169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8580375572816320169'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2011/01/cloudbees-in-sky.html' title='CloudBees in the sky'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_7A4qtBT8llc/TUZEfpGkBQI/AAAAAAAAAMM/cXuZLuc60oo/s72-c/Screen%2Bshot%2B2011-01-30%2Bat%2B3.46.34%2BPM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-6858999353118855371</id><published>2010-10-09T13:05:00.001-07:00</published><updated>2010-10-10T07:14:14.448-07:00</updated><title type='text'>Application Over TV</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_7A4qtBT8llc/TLEyV9NUeZI/AAAAAAAAALM/b82IC8ga2Ys/s1600/screenshot.1.jpg"&gt;&lt;img style="float: right; margin: 0pt 0pt 10px 10px; cursor: pointer; width: 320px; height: 209px;" src="http://3.bp.blogspot.com/_7A4qtBT8llc/TLEyV9NUeZI/AAAAAAAAALM/b82IC8ga2Ys/s320/screenshot.1.jpg" alt="" id="BLOGGER_PHOTO_ID_5526253570549381522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;My venture into Application TV started a few months back when I was in search for a new TV.  My goal was to buy a nice size flat screen and write some applications for it.  Well I was quite a disappointed when not one provider had opened up their platform.&lt;br /&gt;&lt;br /&gt;I defaulted to purchasing a Samsung 46" and while happy with the TV and the Netflix application everything else was lame.   This all changed a few months back when this article on Programmable Web popped up on  &lt;a href="http://blog.programmableweb.com/2010/08/13/samsung-offers-serious-money-to-free-the-tv/"&gt;Samsung Free the TV&lt;/a&gt;.    Since then I spent some time trying to understand TV development and have built out some initial prototypes for myself (and my kids).&lt;br /&gt;&lt;br /&gt;In that time I have learned quite a bit about the platform.  Shaping my own design considerations and development patterns.    While finding my way to these ideas, I realized they seem to be at odds with how many of the existing applications are built.  In my view, the current applications being built are not going to change our TV experience but here are a few thoughts that might have an impact.&lt;br /&gt;&lt;br /&gt;1. &lt;span style="font-weight: bold;"&gt;It's only exciting if we integrate TV and Applications&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Why would you &lt;a href="http://tv.samsungapps.com/upload/contents/20100526074727/11091000000_312X175_1.png"&gt;&lt;img style="float: right; margin: 0pt 0pt 10px 10px; cursor: pointer; width: 398px; height: 224px;" src="http://tv.samsungapps.com/upload/contents/20100526074727/11091000000_312X175_1.png" alt="" border="0" /&gt;&lt;/a&gt;write something which takes up the whole screen and removes the TV experience?  Why would facebook be a whole screen application?&lt;br /&gt;&lt;br /&gt;These type of applications are as exciting as watching grass grow.   Why can't I watch my show and update my status?&lt;br /&gt;&lt;br /&gt;Another view type I have seen possible is the wrapped view.  Perhaps some information context to the side and the TV show on the right.   I can see this for integrating your stream view of the world into your current program. However,  why wouldn't I just cozy up with my laptop and just let my eyes keep flipping back and forth.  With the miracle of DVR I really do not miss anything.&lt;br /&gt;&lt;br /&gt;My belief is that TV and Application are merged together.  &lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/pwuWka6p1xo?hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/pwuWka6p1xo?hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt; As you can see from the video, I wrote  a simple Pong application which overlays the TV.  The kids are watching a ball game while playing pong.  This integrated view has been very popular with my boys and they have been very active in giving me feedback, finding bugs and generating a list of new games to develop - I need to get them writing code.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2.   The remote must change.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I have not investigated the future of remotes but the life of the remote for the past 40 years must come to an end.  I think folks like &lt;a href="http://www.openremote.org/display/HOME/OpenRemote"&gt;OpenRemote&lt;/a&gt; are trying some interesting stuff on the latest hardware but those platforms are not remotes.  If you want to innovate with the remote you must start at the hardware level.    Most recently I have switched from traditional mouse to magic mouse and now magic pad.  Not being a hardware experience expert I am not sure what will work but it feels like the magic pad is on to something.    With the flick of fingers I should be able to wave channels up and down or swipe four fingers and get a selection of channels I should be able to tap.&lt;br /&gt;&lt;br /&gt;The other change for the interaction is support for multiple inputs simultaneously.  Not to create a high end gaming environment but to allow some form of multiple user interaction.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3.  I need access to the stream.  Sorry Apple TV, Google TV and everyone else not owning Fiber to my house! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When building my little prototype applications I have came across numerous times where I want to interact with the signal.  What is the closed caption text?  What is the current channel?  Where is there a face on the screen?  Is there metadata I could tap into?&lt;br /&gt;&lt;br /&gt;The reason I can not is because I am at the TV and not the cable box.  The cable box has the best chance of winning this game.  Perhaps they integrate Google TV or perhaps they expose the technology they already have.  But folks like Samsung or Sony will have a tough time when the set top box not only gives me the overlay but access to the meta data.&lt;br /&gt;&lt;br /&gt;Comcast, Verizon, Cablevision  - what are you folks thinking?   Verizon please learn from your mistakes with BREW.    I believe there is a lot more to the relationships with the content providers and data providers limiting these folks from innovating.  Until that key is unlocked, we will live in an Application in TV environment instead of Application over TV world.&lt;br /&gt;&lt;br /&gt;I will be posting some hello world applications on the Samsung Platform for folks interested in development or wanting to share some notes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-6858999353118855371?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/6858999353118855371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=6858999353118855371' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/6858999353118855371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/6858999353118855371'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2010/10/application-over-tv.html' title='Application Over TV'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_7A4qtBT8llc/TLEyV9NUeZI/AAAAAAAAALM/b82IC8ga2Ys/s72-c/screenshot.1.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-1235302207118148393</id><published>2009-12-03T12:56:00.000-08:00</published><updated>2010-02-22T20:23:15.807-08:00</updated><title type='text'>Java and PHP</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_7A4qtBT8llc/S4NXuG5cPtI/AAAAAAAAAJE/HZAt_hwbLWU/s1600-h/Screen+shot+2010-02-22+at+11.20.46+PM.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 242px; height: 270px;" src="http://2.bp.blogspot.com/_7A4qtBT8llc/S4NXuG5cPtI/AAAAAAAAAJE/HZAt_hwbLWU/s320/Screen+shot+2010-02-22+at+11.20.46+PM.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5441289224430829266" /&gt;&lt;/a&gt;&lt;div&gt;&lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;I have been talking to friends from both sides of the aisle about Java and PHP and finally had a moment to get some thoughts out on the topic.   To start I have grown to respect both platforms. I find while working on one platform I tend to miss attributes of the other.    However those attributes are not syntactic differences, but rather concepts that impact building applications, architectures and organizations. &lt;/p&gt;  &lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;&lt;o:p&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;1. PHP, the web request engine.&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;To have a singular purpose allows a greater focus on getting the job done and hopefully getting it done right.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;PHPs one focus on being nothing more or less than a web request engine is an example of the singular mind.  In contrast java has baggage.   I don't just mean the technical baggage but expectations required of developers.  J2SE and J2EE are volumes and developers are expected to have an understanding of diverse technologies.  Some suited for building business objects, others suited for building web applications and others for building the engine itself.  &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;2. Java, objects from the start.&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;In interviewing developers and asking about past projects I always found a concrete difference in java projects and php projects.   Most (close to all) PHP projects started as scripts which grew out of control, could not scale and then migrated to a php-mvc framework.  In contrast all java projects start off with objects and a structure to the application.  Java developers will ask what does your data layer look like? &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;3. Java. Type Suggestions (not safety) and Package Scope. &lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;My reasons for liking type suggestions and package scope are not to build strict applications they are to build frameworks that can scale within an organization.  When building in PHP I adhere to a strict separation of API and DATA/CACHING layers.  This helps developers navigate a code base, reduce time to get people up to speed on projects and diagnose root cause of bugs.   You might consider type suggestions bad form but I would be fine with function setThing( string $x ) where if we passed in an array for X it would work but emit warning.  My interest in type suggestions is to know how to call a method.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;While documentation is standard in all projects things get missed.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;4. PHP.  Simple Controller. &lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;As the controller will be the entry point for every web request it's best to be as lightweight as possible.  To that end since PHP is built around the web request lightweight controllers are the norm.   While there are always a proliferation of frameworks out there I suggest you build your own.  You can do this two ways take one from out there and strip it down or start from scratch.  The basic components are the autoloader, a naming scheme and of course the logger.   Why I am against committing to an existing MVC framework?  Because if there was one to beat them all it would have been done already. I have been asking myself why no single framework to rule them all for 10+ years.   Years ago I thought it would be struts but it never reigned supreme.    Optimizing a controller/MVC framework requires company specific details.  Those details are technical, strategic and process oriented. There are so many options for what is a M, a V or a C that the possible combinations guarantee that everyone will disagree on the right combination.   &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;Perhaps Domain Specific MVC requires a deeper look. &lt;/p&gt;  &lt;p class="MsoNormal" style="mso-pagination:none;mso-layout-grid-align:none; text-autospace:none"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Perhaps it would be easier to build web applications and development teams from some hybrid of java and php.   To me it feels like a J2WE would be the distribution of choice for building web applications.   Perhaps the J2EE Web Profile, but I think just a re-invention would not gain real traction as there are some new paradigms coming.     Some PHP + Java hybrid would need to treat the cloud request as a primary citizen, maybe the only citizen.   The cloud request being something which understands the web request and the self determination if it was human (browsing pages, submitting data), browser based (ajax ) or machine based (api). &lt;/p&gt;  &lt;!--EndFragment--&gt;   &lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-1235302207118148393?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/1235302207118148393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=1235302207118148393' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1235302207118148393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1235302207118148393'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2009/12/java-and-php.html' title='Java and PHP'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_7A4qtBT8llc/S4NXuG5cPtI/AAAAAAAAAJE/HZAt_hwbLWU/s72-c/Screen+shot+2010-02-22+at+11.20.46+PM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-1105377677119035561</id><published>2008-12-23T21:13:00.000-08:00</published><updated>2008-12-23T21:22:09.226-08:00</updated><title type='text'>Take your jacket and go home!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm2.static.flickr.com/1433/1491166733_ff7a75c3c9.jpg?v=0"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 205px; height: 155px;" src="http://farm2.static.flickr.com/1433/1491166733_ff7a75c3c9.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;My new born niece was named after my grandfather Jacob Friedman.  Steven and Beth asked if I would write something up about my memory of him.&lt;br /&gt;&lt;br /&gt;Dear Hope,&lt;br /&gt;&lt;br /&gt;"Take your jacket and go home!"&lt;br /&gt;&lt;br /&gt;Your Mom and Dad asked me to introduce you to one of the people you&lt;br /&gt;were named after, Jacob Friedman.  For everyone in our family I try to&lt;br /&gt;hold dear to me the one thing they said or did the most often, and for&lt;br /&gt;your Great Grandfather it was 'Take your jacket and go home'.    Strange&lt;br /&gt;thing to remember as it does not seem that nice.  You have to put a&lt;br /&gt;lot in context to realize that it was in jest and love.&lt;br /&gt;&lt;br /&gt;Great Grandpa Jacob was a man who lived and pushed forward in this world despite everything he went through.  Being born and living in Poland before and during World War I and II could not have been an easy thing.  The stories they all shared with me remembers the family living in one room which included kitchen and bed.  I don't think they had indoor plumbing at that point.  It was a very different world than ours today.  Great Grandpa Jacob was married, before he married Grandma Sonia. He had two children.  All of his family however was taken from him during the  war and were killed.  After the war he met Sonia in Berlin, Germany and fell in love and married her.  I tell you this tragic story for two reasons&lt;br /&gt;1. We should never forget our heritage and and the holocaust.&lt;br /&gt;2. We should feel very special and lucky to have the life we have.&lt;br /&gt;- From this part of his life I have always learned to persevere.&lt;br /&gt;&lt;br /&gt;But there is a great second part to his life as well.  In 1950 when your Grandpa Mike was three years old, Jacob and Sonia moved to the United States.  They started with very little, but what they did have was community.  They had Sonia's sisters and Jacob's friends.  The greatest memories of my childhood are being part of this community. Though Jacob lived a hard life he kept Jewish tradition in his house. The singular most favorite memory of my childhood was Passover in Brooklyn.  I just remember starting a seder in grandma Sonia's house with the immediate family. By the end of the night every friend and cousin was there  enjoying each other.&lt;br /&gt;- From this part of his life I learned family is what connects us, tradition is how we enjoy it together.&lt;br /&gt;&lt;br /&gt;So 'Take your Jacket and go home'.  It was simply his way of telling us to behave.  We were a bunch of little kids running around, breaking things, fighting with each other and what not.  You can't blame him.  But those words stuck with me all my life and as I got older I started interpreting it differently.  He could have said 'stop that' or 'get out if you behave like that' or just ignored us.  But it was not meant in a mean way, why else would he tell us to take our jacket?  He loved us!  He could have said leave or get out, but instead it was go home. That was because he was a caring man.&lt;br /&gt;- From this I learn it's always better love and care for others, especially family, no matter if we are angry or happy.&lt;br /&gt;&lt;br /&gt;Your Uncle Rich.&lt;br /&gt;PS. Your great grandmothers hair is still that big!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-1105377677119035561?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/1105377677119035561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=1105377677119035561' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1105377677119035561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1105377677119035561'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/12/take-your-jacket-and-go-home.html' title='Take your jacket and go home!'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-3156473558532566126</id><published>2008-06-02T21:33:00.000-07:00</published><updated>2008-06-03T06:41:22.372-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open social'/><category scheme='http://www.blogger.com/atom/ns#' term='social network'/><category scheme='http://www.blogger.com/atom/ns#' term='facebook'/><category scheme='http://www.blogger.com/atom/ns#' term='ringside'/><title type='text'>IFrame, Facebook, OpenSocial, Widget, Ringside</title><content type='html'>With &lt;a href="http://wiki.ringsidenetworks.org/display/ringside/Getting+Started+with+the+installers"&gt;Ringside Beta-4 release&lt;/a&gt;, by default we support 5 application types out of the box.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;IFrame &lt;/span&gt;- Similar to the Faceook IFrame application and protocol.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Facebook &lt;/span&gt;- Plug your Facebook applications in!   Deploy facebook applications with your own network.   (example included by default is &lt;a href="http://wiki.developers.facebook.com/index.php/Demos"&gt;Footprints&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;OpenSocial &lt;/span&gt;- Deploy open social applications right next to Facebook apps.  Example includes Hello World written by &lt;a href="http://gwfrontiers.blogspot.com/"&gt;Bill Reichardt&lt;/a&gt; and one from &lt;a href="http://www.last.fm/"&gt;Last.FM&lt;/a&gt;.   Bill published a trail map of how &lt;a href="http://wiki.ringsidenetworks.org/display/ringside/OS+Applications"&gt;creating and hosting open social applications &lt;/a&gt;is possible.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;FBML Widget&lt;/span&gt; - Use this widget on any website and have FBML rendered from anywhere, no application required.  Bill put together a tutorial on using this capability - &lt;a href="http://wiki.ringsidenetworks.org/display/ringside/FBML+on+any+website"&gt;FBML on any website&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ringside&lt;/span&gt; - Deploy applications directly inside the Ringside platform, we call them system level apps.  All of the web features such as the community panel, login, registration, friends are delivered as system applications.  The stylecheck application listed in the image is a system application.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_7A4qtBT8llc/SETQ_srHblI/AAAAAAAAAEY/_qTwUsyykqs/s1600-h/applications.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; cursor: pointer; width: 338px; height: 235px;" src="http://4.bp.blogspot.com/_7A4qtBT8llc/SETQ_srHblI/AAAAAAAAAEY/_qTwUsyykqs/s320/applications.png" alt="" id="BLOGGER_PHOTO_ID_5207516861889474130" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In there are two open social applications, one written by Bill Reichardt and the other integrating a open social application by &lt;a href="http://www.last.fm/"&gt;Last.FM&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Deploying your social applications with the Ringside platform enables a single application to be located on any website, community or social network.  Users can access the applications anywhere and their data is portable across the web (the open web).&lt;br /&gt;&lt;br /&gt;Rich @ &lt;a href="http://www.ringsidenetworks.org/"&gt;Ringside&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-3156473558532566126?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/3156473558532566126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=3156473558532566126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/3156473558532566126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/3156473558532566126'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/06/iframe-facebok-opensocial-widget.html' title='IFrame, Facebook, OpenSocial, Widget, Ringside'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_7A4qtBT8llc/SETQ_srHblI/AAAAAAAAAEY/_qTwUsyykqs/s72-c/applications.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-4577204624854378051</id><published>2008-05-29T14:21:00.000-07:00</published><updated>2008-05-31T18:25:37.205-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='facebook'/><category scheme='http://www.blogger.com/atom/ns#' term='ringside'/><category scheme='http://www.blogger.com/atom/ns#' term='connect'/><title type='text'>We All Scream for Ice Cream</title><content type='html'>I like how &lt;a href="http://www.forbes.com/technology/2008/05/28/facebook-redesign-d-tech-internet-cz_qh_0528techfacebook.html"&gt;Facebook helped extend&lt;/a&gt; Ben and Jerry's brand awareness. They were able to use the power of a brand and a social network to make a media campaign connected. While TV spots give visibility and Google Ads extend that with a link for the consumer, Facebook is able to engage the user with the brand. &lt;blockquote&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:0;"&gt;"Our users tell a lot about themselves, that gives us the opportunity" to work with advertisers, she said. One successful example of this, she said, was a promotion by Ben &amp;amp; Jerry's that resulted in 500,000 Facebook users giving each other free ice cream cones within 11 hours. That day, the Ben &amp;amp; Jerry's Web site picked up 53 million impressions, as people searched for &lt;a href="http://www.forbes.com/feeds/ap/2008/05/27/ap5051664.html?partner=lingospot"&gt;store locations&lt;/a&gt; and wrote about their favorite flavors, she said.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;/blockquote&gt;I wonder if we could push further on this and allow the social interaction to be more open to other websites and applications . A similar experience could have been offered from Ben and Jerry's website. Maybe I should be able to share an Ice Cream directly from their store locator view. The second expansion would be to enable this feature through any application. There are 20,000 applications at Facebook, enabling them to participate in the social campaign might just further the engagement and virality.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7A4qtBT8llc/SEAIG8rHbkI/AAAAAAAAAEQ/Ck4QZEYFiZo/s1600-h/diagram-benjerry-multinetworks2.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206170084699500098" style="FLOAT: right; MARGIN: 0pt 0pt 10px 10px; CURSOR: pointer" alt="" src="http://1.bp.blogspot.com/_7A4qtBT8llc/SEAIG8rHbkI/AAAAAAAAAEQ/Ck4QZEYFiZo/s320/diagram-benjerry-multinetworks2.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;If the application was deployed at Ben and Jerry's ,depicted to the right, then the interaction might have the opportunity to be further reaching. Another possible advantage is the campaign could be re-run on other social networks and other websites tailored for specific communities.&lt;br /&gt;&lt;br /&gt;I think it is further expansion of applications into many web sites, communities and social networks which will further drive the idea of an open social web.&lt;br /&gt;&lt;br /&gt;Rich @ &lt;a href="http://www.ringsidenetworks.org/"&gt;Ringside&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-4577204624854378051?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/4577204624854378051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=4577204624854378051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/4577204624854378051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/4577204624854378051'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/05/we-all-scream-for-ice-cream.html' title='We All Scream for Ice Cream'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_7A4qtBT8llc/SEAIG8rHbkI/AAAAAAAAAEQ/Ck4QZEYFiZo/s72-c/diagram-benjerry-multinetworks2.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8440987246754513041</id><published>2008-05-28T12:18:00.000-07:00</published><updated>2008-05-28T13:16:25.469-07:00</updated><title type='text'>Make more of the Open Source Facebook API</title><content type='html'>&lt;pre style="font-family: verdana;" wrap=""&gt;This Facebook &lt;a href="http://bobbickel.blogspot.com/2008/05/facebook-to-open-source-platform.html"&gt;open source&lt;/a&gt; effort is really getting to me, seriously&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;guys.   If you could have done this a few months ago I would not have had to kill myself with implementing all your APIs.   I could focus more on how to wrap the APIs with security, graphing, metering, and more.&lt;br /&gt;&lt;br /&gt;Luckily the Ringside team has discovered a way to warp time and get both done!   As I &lt;a href="http://richardfriedman.blogspot.com/2008/04/ringside-apis.html"&gt;posted&lt;/a&gt; a while back we already have an open source version of the Facebook APIs for application developers to test against.  We have also shown how to extend the platform, and add APIs to your own network.   This past week we updated the core implementation of the APIs, without changing how the APIs are implemented. APIs now are active participants in their lifecycle.&lt;br /&gt;&lt;span class="moz-txt-citetags"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Load -&lt;/span&gt; we load the session and context specific to the user,&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;application and network. This part is important since it ensures each requests data can be&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;encapsulated to their session.&lt;span class="moz-txt-citetags"&gt;  &lt;/span&gt;At this point we can also determine if this user has identities across multiple networks and tie things together.&lt;br /&gt;&lt;span class="moz-txt-citetags"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Delegation -&lt;/span&gt; an intermediary step which allows any api to participate&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;in&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;delegation.  If this call maps to an open social container in the ether or facebook we can offer trusted delegation.  We also ensure in the case&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;of facebook the user and application are valid on that network.  Notice no big pipe into a given social network but rather ensure that the Application and User are connected properly.&lt;br /&gt;&lt;span class="moz-txt-citetags"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Validate -&lt;/span&gt; a sequence of validation steps to ensure the request is&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;meant&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;for this network and approved to make the request.   Validating session, keys, signatures, callid's and request parameters.&lt;br /&gt;&lt;span class="moz-txt-citetags"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Execute -&lt;/span&gt; execute the method and render its response in the appropriate&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;format (json, xml, php). Exception process is handled. &lt;br /&gt;&lt;span class="moz-txt-citetags"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="moz-txt-citetags"&gt;&lt;/span&gt;We look forward to sharing with Facebook's open source release.   And&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;eagerly awaiting to validate against their&lt;span class="moz-txt-citetags"&gt; &lt;/span&gt;code drop for compatibility testing.&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8440987246754513041?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8440987246754513041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8440987246754513041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8440987246754513041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8440987246754513041'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/05/make-more-of-open-source-facebook-api.html' title='Make more of the Open Source Facebook API'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-7805756335751125575</id><published>2008-05-12T06:18:00.000-07:00</published><updated>2008-05-12T06:38:23.583-07:00</updated><title type='text'>Social Everywhere</title><content type='html'>This story is short. Facebook, MySpace and others want their social to be everywhere, similar to how Google's search is everywhere.   This is a three step process unfolding in front of all of us:        &lt;p&gt;1.  &lt;span style="font-weight: bold;"&gt;Open API &lt;/span&gt;where applications can be added to a social network. Facebook clearly had an early lead on this front, open social is trying to offer similar functionality, but with promises of a broader community.   &lt;/p&gt;              &lt;p&gt;2. &lt;span style="font-weight: bold;"&gt;Open Identity&lt;/span&gt; (Profile) to broaden attach rate of a social network.  MySpace and Facebook made major announcements in this area last week, and Google and Open Social are expected to make announcements this week.  They are promoting the use of your user profile on many sites.   They will make it easy for any website to add the ability to bring your friends to that page.    Developers will be able to associate a local profile to a users social identity on any particular social network.   With this you can bring social interactions to your website.  &lt;/p&gt;      &lt;p&gt;3. &lt;span style="font-weight: bold;"&gt;Open Network &lt;/span&gt;to broaden your users into a larger social network.  This is the likely next step.  The social networks will allow sites to push their social information out.  They will provide a set of integrations which allow you to enable your users to travel within their social graph. For example your website will be able to register a FEED or NOTIFICATION api, so if two users interact within Facebook as it relates to your site, Facebook will send out the viral message to your back end, and you can operate on that notification.  &lt;/p&gt;      &lt;p&gt;While the social media networks are currently at step two of their strategy it is becoming clear that the ability to use social technology for a website, a community or even software system will become very powerful and possibly transform the web.  No one is saying rewrite your application to be a social application, that would be a mistake.  However the transformation of social context becoming part of how we think of building sites, communities and applications is going to cycle through the development process over the next three years.    &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ringsidenetworks.org"&gt;Ringside &lt;/a&gt;was built on the premise that social networking would become pervasive, each of the social media networks would gain market share, and that every site would need to consider its strategy around social networking.  It's a lot of fun to be part of this time, hopefully to enjoy working as the platform which helps integrate the social context from social media networks to the value you need to deliver in your business.  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-7805756335751125575?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/7805756335751125575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=7805756335751125575' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/7805756335751125575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/7805756335751125575'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/05/social-everywhere.html' title='Social Everywhere'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-6807576928477985625</id><published>2008-04-30T06:20:00.000-07:00</published><updated>2008-04-30T07:32:12.991-07:00</updated><title type='text'>Facebook and Ringside Tags</title><content type='html'>Tags provide a consistent user experience in a platform, for facebook it ensures all applications that 'hook' into the system can (if they choose to) have a consistent look and feel.  Jeff and I continually discuss that the Ringside Platform does not have as many tags as the faceobook platform, as of yet, however we have two major differences&lt;br /&gt;&lt;ul&gt;&lt;li&gt;New Tags&lt;/li&gt;&lt;li&gt;Adaptation&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;We can add new tags to the platform that we ship or developers can add their own tags and make it available to applications deployed to their network.  For example if you wanted every application to have the ability to use gifts you can add a tag &lt;gift:give gid="love" repository="love-repo"&gt;.  Now every application can have a gift component which is across the ENTIRE system.  The gift would be scoped to the application, really no different than how fb:comment works today in Facebook but for anything you can think of!&lt;br /&gt;&lt;br /&gt;In Facebook applications are adapted for the Facebook  platform allowing all apps to have a similar user experience.   In Ringside this is true as well, all applications can come together with a common user experience, but that experience can begin to change when the same application is rendered through to a third party community, network or site.   This adaptation is being expanded for our June release but will allow the same application to maintain its portability of data and functions yet allow customization based on where it is being rendered.    &lt;br /&gt;&lt;br /&gt;Jason, Bill and I (and team) have been going back and forth on the how the adaptation would work.  How much to put at the application scope, ie the application decides what to pick up from the third party network or how much the third party network controls how the application looks.  I just started the thread in the forums (http://forums.ringsidenetworks.org/thread.jspa?threadID=16)  as we were discussing this in IRC (#ringside).&lt;br /&gt;&lt;br /&gt;Today we have about 50 tags implemented and more coming.  Many of the standard Facebook tags and some example tags such as &lt;&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-6807576928477985625?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/6807576928477985625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=6807576928477985625' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/6807576928477985625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/6807576928477985625'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/04/facebook-and-ringside-tags.html' title='Facebook and Ringside Tags'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8621135615658348355</id><published>2008-04-29T07:09:00.000-07:00</published><updated>2008-04-29T09:16:47.300-07:00</updated><title type='text'>Ringside APIs</title><content type='html'>While we have been putting effort into supporting Facebook APIs  &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Admin  - 2 of 4&lt;/li&gt;&lt;li&gt;Application - 1 of 1&lt;/li&gt;&lt;li&gt;Auth - 2 of 2&lt;/li&gt;&lt;li&gt;Batch - not yet supported&lt;/li&gt;&lt;li&gt;Data - currently support UserPreferences&lt;/li&gt;&lt;li&gt;Events - 2 of 2&lt;/li&gt;&lt;li&gt;FBML - 3 of 3&lt;/li&gt;&lt;li&gt;Feed - 2 of 3&lt;/li&gt;&lt;li&gt;FQL - Supported but not yet for all tables ( but coming )&lt;/li&gt;&lt;li&gt;Friends - 3 0f 4&lt;/li&gt;&lt;li&gt;Groups - 2 of 2&lt;/li&gt;&lt;li&gt;MarketPlace - not yet implemented, but let us know if you need them&lt;/li&gt;&lt;li&gt;Notifications - 3 of 4&lt;/li&gt;&lt;li&gt;Pages - 4 of 4&lt;/li&gt;&lt;li&gt;Photos - 5 of 6&lt;/li&gt;&lt;li&gt;Profile - 2 of 2&lt;/li&gt;&lt;li&gt;Users - 5 of 5&lt;/li&gt;&lt;/ul&gt;We have also been adding our own about 50+ of them!&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Admin - 14 apis supporting administrative functions&lt;/li&gt;&lt;li&gt;Auth - Things you just can't do with Facebook&lt;/li&gt;&lt;li&gt;Comments - 4 simple Apis for get, set, count and removing &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Favorites - Built into the system&lt;/li&gt;&lt;li&gt;Friends - 4 apis including basic search&lt;/li&gt;&lt;li&gt;Items - I guess in the way of marketplace but generic to built on top of&lt;/li&gt;&lt;li&gt;Ratings - Ratings APIs so it can be used globally&lt;/li&gt;&lt;li&gt;Subscriptions - 3  for Payment stuff, expect a lot more of these soon&lt;/li&gt;&lt;li&gt;Suggestion - Use them as freely as you would comments in a facebook application&lt;/li&gt;&lt;li&gt;Users - 8 api's for administrative apps&lt;/li&gt;&lt;/ul&gt;We are in process of automating the documentation for ALL the api's, they will be available at &lt;a href="http://wiki.ringsidenetworks.org/display/ringside/Ringside+API+Extensions+and+Facebook+API"&gt;Ringside Community&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Have ideas for more things which should be part of the core platform?  Have an API you want baked in or at least visibile to others?    Get involved in our development community and we can&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8621135615658348355?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8621135615658348355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8621135615658348355' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8621135615658348355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8621135615658348355'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/04/ringside-apis.html' title='Ringside APIs'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-2582698087361744904</id><published>2008-04-29T06:56:00.000-07:00</published><updated>2008-04-29T07:09:19.733-07:00</updated><title type='text'>Ringside Beta 2 Release</title><content type='html'>Beta 2 Released&lt;br /&gt;&lt;br /&gt;We released Beta 2 tonight and we are on pace to have releases every 2 weeks here on out. To facilitate this we have a completely automated build and test process much thanks to the open source projects listed for making this possible.&lt;br /&gt;&lt;br /&gt;    * Hudson ( https://hudson.dev.java.net/ )&lt;br /&gt;    * PHP Unit ( http://phpunit.de/ )&lt;br /&gt;    * SimpleTest ( http://simpletest.org/ )&lt;br /&gt;&lt;br /&gt;We have also started to add tests against our demo/tutorial applications with simpletest to ensure each beta supports the tutorials as well.&lt;br /&gt;Beta 2 Includes&lt;br /&gt;&lt;br /&gt;    * Working Identity Mapping, though we are adding more in usability and demonstrations in the next Beta.&lt;br /&gt;    * Starting example of Payment APIs, Tags and administration (Brian is posting a screen show of this as well)&lt;br /&gt;    * Developer Network UI - Enables adding support for an app to connect to multiple networks&lt;br /&gt;    * Network Management - Ability to add third party networks (supporting lots of social communities to start using your application)&lt;br /&gt;&lt;br /&gt;Release Notes Beta 2&lt;br /&gt;Some insights into Beta 3.&lt;br /&gt;&lt;br /&gt;    * Identity Mapping&lt;br /&gt;    * Early beta of Open Social integration&lt;br /&gt;    * Open ID Integration for IDM&lt;br /&gt;    * More payment APIs and TAGs&lt;br /&gt;    * More example applications.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-2582698087361744904?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/2582698087361744904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=2582698087361744904' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/2582698087361744904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/2582698087361744904'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2008/04/ringside-beta-2-release.html' title='Ringside Beta 2 Release'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-1392128190491681170</id><published>2007-10-19T12:47:00.000-07:00</published><updated>2007-10-19T19:42:07.601-07:00</updated><title type='text'></title><content type='html'>I was cleaning up an old laptop recently, organizing all my applications.   In my clean up I checked out some of the lists of open source applications people use and pimped myself out with the latest - Miro was a good one I just picked up for podcast, while Juice I tried and dropped. This is just my list of useful applications and way to keep the links in one place for future reference.  I found good stuff in this &lt;a href="http://www.thesimpledollar.com/2006/12/01/30-essential-pieces-of-free-and-open-software-for-windows/"&gt;post and the comments&lt;/a&gt; as well.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Standard Applications&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.openoffice.org/"&gt;&lt;img style="cursor: pointer; width: 142px; height: 75px;" src="http://www.cs.utah.edu/%7Esidd/images/openoffice_logo.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.mozilla.com/en-US/firefox/"&gt;&lt;img style="cursor: pointer; width: 70px; height: 75px;" src="http://tbn0.google.com/images?q=tbn:TUjxusE7btEQGM:http://affiliatefortunecookies.com/wp-content/uploads/2007/05/firefox_logo.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.mozilla.com/en-US/thunderbird/"&gt;&lt;img style="cursor: pointer; width: 82px; height: 82px;" src="http://tbn0.google.com/images?q=tbn:UlZ73VP_D6922M:http://www.getthunderbird.de/thunderbird.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Being creative&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.gimp.org/"&gt;&lt;img style="cursor: pointer; width: 109px; height: 78px;" src="http://tbn0.google.com/images?q=tbn:98ViuDJ0wi1mJM:http://www.gimp-shop.info/pt/logo_gris.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.inkscape.org/"&gt;&lt;img style="cursor: pointer; width: 81px; height: 94px;" src="http://www.lugardeorigen.net/blog/wp-content/uploads/2007/03/inkscape_logo.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.kompozer.net/"&gt;&lt;img style="cursor: pointer; width: 87px; height: 87px;" src="http://kompozer.sourceforge.net/images/kompozer_128x128.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.blender.org/"&gt;&lt;img style="cursor: pointer; width: 91px; height: 91px;" src="http://www.opensourcewindows.org/icon/blender.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://freemind.sourceforge.net/wiki/index.php/Main_Page"&gt;&lt;img style="cursor: pointer; width: 87px; height: 87px;" src="http://www.macupdate.com/images/icons/19325.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Listening In                     Keeping Up&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.getmiro.com/"&gt;&lt;img style="cursor: pointer; width: 177px; height: 73px;" src="http://www.getmiro.com/img/home-logo.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://audacity.sourceforge.net/"&gt;&lt;img style="cursor: pointer; width: 95px; height: 83px;" src="http://www.cs.hmc.edu/%7Embrubeck/gslug/ui/AudacityLogo.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://xchat.org/"&gt;&lt;img style="cursor: pointer; width: 77px; height: 77px;" src="http://xchat.org/img/xchatlogo.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.pidgin.im/"&gt;&lt;img style="cursor: pointer; width: 79px; height: 79px;" src="http://upload.wikimedia.org/wikipedia/commons/thumb/1/18/Pidgin.svg/48px-Pidgin.svg.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Utility&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://keepass.info/"&gt;&lt;img style="cursor: pointer; width: 77px; height: 77px;" src="http://keepass.info/images/plockb75.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.truecrypt.org/"&gt;&lt;img style="cursor: pointer; width: 86px; height: 74px;" src="http://phobos.xtec.net/fmas/imatges/usb_truecrypt.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.httrack.com/"&gt;&lt;img style="cursor: pointer; width: 93px; height: 31px;" src="http://www.httrack.com/icn/httbutton.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://chiark.greenend.org.uk/%7Esgtatham/putty/"&gt;&lt;img style="cursor: pointer; width: 82px; height: 76px;" src="https://security.usf.edu/images/putty-icon.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.clamav.net/"&gt;&lt;img style="cursor: pointer; width: 77px; height: 77px;" src="http://www.s3-solutions.de/img/clam.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And for that friend who asked for some utility stuff for windows which was open source&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.7-zip.org/"&gt;&lt;img style="cursor: pointer; width: 119px; height: 61px;" src="http://www.7-zip.org/7ziplogo.png" alt="" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://st-m.sourceforge.net/"&gt;&lt;img style="cursor: pointer; width: 63px; height: 63px;" src="http://st-m.sourceforge.net/misc/st-m_icon.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flos-freeware.ch/notepad2.html"&gt;&lt;img style="cursor: pointer; width: 66px; height: 66px;" src="http://www.blueantmedia.co.uk/images/notepad_2.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://virtuawin.sourceforge.net/"&gt;&lt;img style="cursor: pointer; width: 58px; height: 58px;" src="http://virtuawin.sourceforge.net/img/misc/vw_icon34x34.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.pdfforge.org/products/pdfcreator"&gt;&lt;img style="cursor: pointer; width: 50px; height: 65px;" src="http://www.pdfforge.org/images/logo01_flamme.jpg" alt="" border="0" /&gt;&lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blog.kowalczyk.info/software/sumatrapdf/"&gt;&lt;img style="cursor: pointer; width: 62px; height: 62px;" src="http://tbn0.google.com/images?q=tbn:ZRhIYxKSFzYr3M:http://portableapps.com/files/images/logos/sumatrapdf.png" alt="" border="0" /&gt;&lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.clamwin.com/"&gt;&lt;img style="cursor: pointer; width: 75px; height: 63px;" src="http://www.clamwin.com/templates/ClamWin/images/logo.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Can you match icons to the application name?  (All of the images already link to correct project homes).&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.openoffice.org/"&gt;Open Office&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mozilla.com/en-US/firefox/"&gt;Firefox&lt;/a&gt; (&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://addons.mozilla.org/en-US/firefox/addon/60"&gt;+webdeveloper&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mozilla.com/en-US/thunderbird/"&gt;Thunderbird&lt;/a&gt; (&lt;a href="https://addons.mozilla.org/en-US/thunderbird/addon/2313"&gt;+lightning&lt;/a&gt;, &lt;a href="https://addons.mozilla.org/en-US/thunderbird/addon/4631"&gt;+google calendar provider&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.gimp.org/"&gt;Gimp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.inkscape.org/"&gt;Inkscape&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blender.org/"&gt;Blender&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://freemind.sourceforge.net/wiki/index.php/Main_Page"&gt;Freemind&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.kompozer.net/"&gt;Kompozer (NVU)&lt;/a&gt;&lt;a href="http://www.kompozer.net/"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.getmiro.com/"&gt;Miro&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://audacity.sourceforge.net/"&gt;Audacity&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://xchat.org/"&gt;X-Chat&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.pidgin.im/"&gt;Pidgin&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.7-zip.org/"&gt;7 Zip&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.clamav.net/"&gt;ClamAv&lt;/a&gt;/&lt;a href="http://www.clamwin.com/"&gt;ClamWin&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://chiark.greenend.org.uk/%7Esgtatham/putty/"&gt;Putty&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.httrack.com/"&gt;HTTrack&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.truecrypt.org/"&gt;Truecrypt&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://keepass.info/"&gt;KeepPass&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://st-m.sourceforge.net/"&gt;Startup Manager&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.flos-freeware.ch/notepad2.html"&gt;Notepad 2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://virtuawin.sourceforge.net/"&gt;Virtual Win&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.kowalczyk.info/software/sumatrapdf/"&gt;PDF Creator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.kowalczyk.info/software/sumatrapdf/"&gt;Sumatra PDF&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.clamwin.com/"&gt;ClamWin&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-1392128190491681170?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/1392128190491681170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=1392128190491681170' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1392128190491681170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1392128190491681170'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/10/i-was-cleaning-up-old-laptop-recently.html' title=''/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8707332900422123265</id><published>2007-10-05T17:16:00.000-07:00</published><updated>2007-10-05T17:16:23.529-07:00</updated><title type='text'></title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_7A4qtBT8llc/RwbT1nkbpQI/AAAAAAAAACw/7s1Adpky6o0/s1600-h/CIMG4803.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_" style="CLEAR: both; FLOAT: right; MARGIN: 0px 0px 10px 10px" alt="" src="http://2.bp.blogspot.com/_7A4qtBT8llc/RwbT1nkbpQI/AAAAAAAAACw/7s1Adpky6o0/s320/CIMG4803.JPG" border="0" /&gt;&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;It's great to be in amazement. His excitement, his wonder of the colors. Of course he ran around the rest of the afternoon pretending this was a web shooter and that he was spiderman!&lt;div style='clear:both; text-align:RIGHT'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8707332900422123265?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8707332900422123265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8707332900422123265' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8707332900422123265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8707332900422123265'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/10/its-great-to-be-in-amazement.html' title=''/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_7A4qtBT8llc/RwbT1nkbpQI/AAAAAAAAACw/7s1Adpky6o0/s72-c/CIMG4803.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-1400567015685187712</id><published>2007-09-01T18:36:00.000-07:00</published><updated>2007-09-01T21:16:40.880-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='stock market'/><category scheme='http://www.blogger.com/atom/ns#' term='game theory'/><category scheme='http://www.blogger.com/atom/ns#' term='finance'/><category scheme='http://www.blogger.com/atom/ns#' term='investing'/><title type='text'>A Random Walk Down Wall Street</title><content type='html'>Just finished up the book &lt;a href="http://www.amazon.com/Random-Walk-Down-Wall-Street/dp/0393062457"&gt;"A Random Walk Down Wall Street"&lt;/a&gt;.  It is required reading for my finance course, first few chapters anyway.  Started it while on vacation and could not really put it down.  I would call this book an excellent perspective, must read before you try to game the market. &lt;br /&gt;&lt;br /&gt;However, just to add my 2 cents.  &lt;br /&gt;1. The market would not be a random walk if it were not for all the schemes people attempt.   Each scheme forces the market to be random.  I believe the systematic risk of a any given stock is based on the risk of the leadership of such company. Strong leadership, strong business. Read &lt;a href="http://www.amazon.com/Good-Great-Companies-Leap-Others/dp/0066620996/"&gt;"Good to Great"&lt;/a&gt; to understand.  The measurement of risk based on numbers at best (in my opinion) can only be used to predict some for of short run direction.  As this information is no better than a chartist and any scheme would just serve to further "A Random Walk".&lt;br /&gt;&lt;br /&gt;2. I did not see &lt;a href="http://en.wikipedia.org/wiki/Game_theory"&gt;"Game Theory"&lt;/a&gt; discussed at all in the book, though I am sure there must be something out there on the topic. My guess is that unsystematic risk driven by plain old schemes,  behavioral finance theory and even arbitrage are no more than forms of game theory.  The real scheme would be if everyone learned from each other and played some form of tit-for-tat game theory.   However with combination of independent and institution players and the global competitiveness this would not be possible. &lt;br /&gt;&lt;br /&gt;As it relates to risk vs return, higher risk in the market only produces more returns for those in control of the risk.  If others now your risk they can play against it (sounds game theory to me).&lt;br /&gt;&lt;br /&gt;Moral of the story?&lt;br /&gt;a. Long run thinking will be productive, assuming everyone else is coming up with schemes.&lt;br /&gt;(corollary - There could be a situation of long run game theory which destroys you and the market)&lt;br /&gt;b. Short run schemes can pay off, but its not much better than luck and gambling.  Even the greatest theory could be undermined with others playing game theory against you.   And hence timing of taking your money would just be luck.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-1400567015685187712?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/1400567015685187712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=1400567015685187712' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1400567015685187712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1400567015685187712'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/09/random-walk-down-wall-street.html' title='A Random Walk Down Wall Street'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-112442266219487310</id><published>2007-07-25T21:06:00.000-07:00</published><updated>2007-07-25T21:10:36.500-07:00</updated><title type='text'>Welcome to the Widgets web</title><content type='html'>It started innocent, I came across widgetbox and said sure &lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/Widgets/WidgetBoxWidgetsIWrote" class="twikiLink"&gt;I can write a widget.&lt;/a&gt; 7 Blidgets, 2 remote SWF widgets, and 2 social shout out widgets later I was wondering more about widgets. &lt;a href="http://en.wikipedia.org/wiki/Web_widget" target="_top"&gt;(Obligatory link to wikipedia)&lt;/a&gt;. So did a little digging and found the following ( this is what I found, let me know if there is more ) &lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt; 9 Platforms for widgets &lt;/li&gt;&lt;li&gt; 3 main technologies for web widgets &lt;/li&gt;&lt;li&gt; 10 desktop widget systems &lt;/li&gt;&lt;li&gt; 12 Million in funding I can find,  &lt;/li&gt;&lt;li&gt; 2 Companies internally funding platforms (Fox and Vendio) &lt;/li&gt;&lt;li&gt; Mark Cuban funded one of them (undisclosed amount) &lt;/li&gt;&lt;li&gt; Mobile widget providers are popping up (found 3 but did not look that hard) &lt;/li&gt;&lt;li&gt; &lt;span class="twikiNewLink"&gt;W3C&lt;a href="http://www.osadvisors.com/twiki/bin/edit.pl/Widgets/W3C?topicparent=Widgets.WebHome" rel="nofollow" title="Create this topic"&gt;?&lt;/a&gt;&lt;/span&gt;  is driving a standard for this &lt;/li&gt;&lt;li&gt; 2 Widget conferences  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; And I found &lt;a href="http://www.sexywidget.com/my_weblog/2007/02/making_sense_of.html" target="_top"&gt;one great post&lt;/a&gt; which lays the whole thing out.  &lt;/p&gt;&lt;p&gt; &lt;strong&gt;My Take&lt;/strong&gt; I have not written widgets yet for all the platforms, though I think the simplicity of widgetbox enables creation, distrubtion, management with just knowledge of the basics (html and/or javascript). Want to go deeper then write some flash. I am impressed with yourminis, but not so much for the widget platform, rather for the potential of a "Social Desktop". &lt;/p&gt;&lt;p&gt; Most of the folks in this space are concentrating (at least from my perspective) on the ad network, I am not sure if the intention is to be the ad network or be the a channel for the ad network and claim a slice of the pie. They each seem to promote the number of widgets deployed, which I guess represents the amount of web-space they have access to. Bigger your network bigger your valuation. It also seems their biggest distribution is the blogging universe and the social platforms likes facebook/myspace. Myspace has &lt;span class="twikiNewLink"&gt;SpringWidgets&lt;a href="http://www.osadvisors.com/twiki/bin/edit.pl/Widgets/SpringWidgets?topicparent=Widgets.WebHome" rel="nofollow" title="Create this topic"&gt;?&lt;/a&gt;&lt;/span&gt; , Yahoo has widgets, Google has theirs, MS has theirs, Apple has something, and note for most of these there is not only a widget concept but a layer which enables you to integrate closer to their core platform. I would expect (probably already exists) a widget platform which has default integration with &lt;span class="twikiNewLink"&gt;MyFace&lt;a href="http://www.osadvisors.com/twiki/bin/edit.pl/Widgets/MyFace?topicparent=Widgets.WebHome" rel="nofollow" title="Create this topic"&gt;?&lt;/a&gt;&lt;/span&gt; and one which is focused on 'mashups', maybe a QED-Mashup-Widget-Maker. I figure that a good exit for these companies would be acquisition by a core social or similar platform, widgets are important to a platform (because they offer front side&lt;a href="http://richardfriedman.blogspot.com/2007/06/multi-sided-platforms-for-business-or.html" target="_top"&gt;multi-sided market platform dynamics&lt;/a&gt;). There is definitely one platform / company which is seems to resonate across all widget makers, "Adobe, all your widgets are belong to us." &lt;/p&gt;&lt;p&gt; I am by far not an expert on widgets, just writing my impressions so far.  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;h2&gt;&lt;a name="Widgets I wrote, writing, or jus"&gt;&lt;/a&gt; Widgets I wrote, writing, or just playing with &lt;/h2&gt; &lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/Widgets/WidgetBoxWidgetsIWrote" class="twikiLink"&gt;WidgetBoxWidgetsIWrote&lt;/a&gt; &lt;p&gt; &lt;/p&gt;&lt;h2&gt;&lt;a name="List of widget based Systems"&gt;&lt;/a&gt; List of widget based Systems &lt;/h2&gt; &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Widget Platforms"&gt;&lt;/a&gt; Widget Platforms &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="http://www.widgetbox.com/" target="_top"&gt;Widget Box&lt;/a&gt;  &lt;a href="http://blog.widgetbox.com/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; 1.5 Million in funding   &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.widgipedia.com/" target="_top"&gt;Widgipedia&lt;/a&gt; &lt;a href="http://www.widgipedia.com/forum/list.php?2" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; Launched by Vendio (internal funding?) &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.yourminis.com/main" target="_top"&gt;Your Minis&lt;/a&gt; &lt;a href="http://blog.yourminis.com/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; Mark Cuban funding, undisclosed &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.springwidgets.com/" target="_top"&gt;Spring Widgets&lt;/a&gt; &lt;a href="http://www.springwidgets.com/blog/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; Fox Interactive platform &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.widgetop.com/desktop.html" target="_top"&gt;Widgetop&lt;/a&gt; &lt;a href="http://widgetop.wordpress.com/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; Unknown &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.clearspring.com/" target="_top"&gt;Clear Spring&lt;/a&gt; &lt;a href="http://www.clearspring.com/blog" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; 5.5 Million second round &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.musestorm.com/" target="_top"&gt;MuseStorm&lt;/a&gt; &lt;a href="http://www.musestorm.com/blog/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; 1 Million in funding &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.snipperoo.com/login" target="_top"&gt;Snipperoo&lt;/a&gt; &lt;a href="http://blog.snipperoo.com/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; Unknown &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.gigya.com/Web/info/partners.aspx" target="_top"&gt;Gigya&lt;/a&gt; &lt;ul&gt;&lt;li&gt; 4 Million from Benchmark &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Widgets Tech"&gt;&lt;/a&gt; Widgets Tech &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; HTML &lt;/li&gt;&lt;li&gt; FLASH &lt;/li&gt;&lt;li&gt; JAVA &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Common Desktop Widget Systems"&gt;&lt;/a&gt; Common Desktop Widget Systems &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="http://widgets.yahoo.com/" target="_top"&gt;Yahoo Widgets&lt;/a&gt;  &lt;a href="http://widgets.yahoo.net/blog/" target="_top"&gt;blog&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://desktop.google.com/plugins/" target="_top"&gt;Google Gadgets&lt;/a&gt;  &lt;a href="http://googledesktopapis.blogspot.com/" target="_top"&gt;desktop API Blog&lt;/a&gt; &lt;a href="http://googledesktop.blogspot.com/" target="_top"&gt;Desktop Blog&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://labs.adobe.com/technologies/air/" target="_top"&gt;Apollo or Air&lt;/a&gt;  &lt;/li&gt;&lt;li&gt; &lt;a href="http://gallery.live.com/" target="_top"&gt;MS Sidebar Gadgets&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.desktopgadgets.com/" target="_top"&gt;Desktop X&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://kapsules.shellscape.org/" target="_top"&gt;Kapsules&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.samurize.com/modules/news/" target="_top"&gt;Samurize&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.klipfolio.com/" target="_top"&gt;Klipfolio&lt;/a&gt; &lt;a href="http://www.klipfolio.com/blog" target="_top"&gt;blog&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://avedesk.aqua-soft.org/" target="_top"&gt;Ave Desk&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.apple.com/macosx/features/dashboard/" target="_top"&gt;Apple Dashboard&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Mobile Widget Systems"&gt;&lt;/a&gt; Mobile Widget Systems &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="http://plusmo.com/homepage/home.shtml" target="_top"&gt;Plusmo&lt;/a&gt; &lt;a href="http://www.plusmo.com/blog/" target="_top"&gt;blog&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.widgetop.com/mobile.html" target="_top"&gt;Widgetop&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="https://www.widsets.com/index" target="_top"&gt;Widsets&lt;/a&gt; &lt;a href="http://blog.widsets.com/" target="_top"&gt;blog&lt;/a&gt; &lt;ul&gt;&lt;li&gt; Funded by Nokia &lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Browser Extension"&gt;&lt;/a&gt; Browser Extension &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="https://addons.mozilla.org/en-US/firefox/browse/type:1" target="_top"&gt;Firefox Extensions&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://widgets.opera.com/" target="_top"&gt;Opera Widgets&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Standards for Widgets"&gt;&lt;/a&gt; Standards for Widgets &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="http://www.w3.org/TR/2007/WD-widgets-reqs-20070705/" target="_top"&gt;http://www.w3.org/TR/2007/WD-widgets-reqs-20070705/&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Widget Conference"&gt;&lt;/a&gt; Widget Conference &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="http://www.widgetcon.com/" target="_top"&gt;http://www.widgetcon.com/&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://widgetslive.com/" target="_top"&gt;http://widgetslive.com/&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;&lt;h3&gt;&lt;a name="Widget Business Model conversati"&gt;&lt;/a&gt; Widget Business Model conversations and observations &lt;/h3&gt; &lt;ul&gt;&lt;li&gt; &lt;a href="http://www.feld.com/blog/archives/2007/03/yawp_yet_anothe.html" target="_top"&gt;http://www.feld.com/blog/archives/2007/03/yawp_yet_anothe.html&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.sexywidget.com/my_weblog/2007/02/making_sense_of.html" target="_top"&gt;http://www.sexywidget.com/my_weblog/2007/02/making_sense_of.html&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://www.feld.com/blog/archives/2007/03/another_view_on.html" target="_top"&gt;http://www.feld.com/blog/archives/2007/03/another_view_on.html&lt;/a&gt; &lt;/li&gt;&lt;li&gt; &lt;a href="http://coloradostartups.com/2007/01/28/big-or-bullshit-widgets/" target="_top"&gt;http://coloradostartups.com/2007/01/28/big-or-bullshit-widgets/&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-112442266219487310?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/112442266219487310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=112442266219487310' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/112442266219487310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/112442266219487310'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/07/welcome-to-widgets-web.html' title='Welcome to the Widgets web'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-6948295390203563702</id><published>2007-07-23T11:22:00.001-07:00</published><updated>2007-07-23T11:52:08.707-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='systems mananagement'/><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='acquisition'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='hp'/><category scheme='http://www.blogger.com/atom/ns#' term='provisioning'/><category scheme='http://www.blogger.com/atom/ns#' term='opsware'/><title type='text'>HP Acquires Opsware... don't they have Novadigm?</title><content type='html'>I heard the ground rumbling all the way from the valley today..  The blast of emails about HP and Opsware where my tsunami.  Major props to Opsware for growing and executing on the business plan.    More consolidation in this space is never surprising, but it does seem like we have an oligopoly in this market.  So much so it is controlled by the &lt;a href="http://www.itmanagement.com/news/ca-introscope-ibm-vallent-112806/"&gt;'Big Four'&lt;/a&gt; as they market refers to them. &lt;br /&gt;&lt;br /&gt;But what surprises me is a few years back HP acquired Novadigm and in &lt;a href="http://www.itnews.com.au/News/14145,hp-buys-two-more-companies.aspx"&gt;this article&lt;/a&gt; even questioned how would the relationship with Opsware and Altiris (&lt;a href="http://richardfriedman.blogspot.com/2007/01/symantec-altiris-and-field.html"&gt;acquired by Symantec&lt;/a&gt;) continue.  The question I wonder is why couldn't HP/Novadigm execute in the space.&lt;br /&gt;&lt;br /&gt;* Maybe the answer is the target markets are different and they are complementary and now they could take on the market.&lt;br /&gt;* Maybe HP made the wrong bet, and 120+M for Novadigm is an excusable rounding error. &lt;br /&gt;* Maybe it was the leadership/execution and now there is different leadership from the top through their software division.&lt;br /&gt;&lt;br /&gt;Short term I think this is a good move for HP, they keep shaking up the software organization enough no one will ever figure out if they executing well or just keep falling forward.   But they have enough of the forward momentum they have solidified their spot in &lt;a href="http://www.itmanagement.com/news/ca-introscope-ibm-vallent-112806/"&gt;the Big Four&lt;/a&gt; for some time. &lt;br /&gt;&lt;br /&gt;So.. WHO, really WHO, is left in the mid market do anything unique?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-6948295390203563702?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/6948295390203563702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=6948295390203563702' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/6948295390203563702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/6948295390203563702'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/07/hp-acquires-opsware-dont-they-have.html' title='HP Acquires Opsware... don&apos;t they have Novadigm?'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-9021459043036194035</id><published>2007-07-19T07:56:00.000-07:00</published><updated>2007-09-10T14:41:31.691-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='lucene'/><category scheme='http://www.blogger.com/atom/ns#' term='index'/><category scheme='http://www.blogger.com/atom/ns#' term='tag cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='nutch'/><title type='text'>Lucene Tag Cloud Generator</title><content type='html'>I wrote a &lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/TagClouds/WebHome"&gt;tag cloud generator&lt;/a&gt; for Lucene, examples of it include&lt;a href="http://richardfriedman.blogspot.com/2007/06/creating-tag-cloud.html" target="_top"&gt;&lt;br /&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://richardfriedman.blogspot.com/2007/06/creating-tag-cloud.html" target="_top"&gt;Richard Friedman Blog&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.osadvisors.com/isammy" target="_top"&gt;Examples&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;The generator is written as Nutch Plugin for no good reason ;)&lt;br /&gt;&lt;br /&gt;I build the cloud from reading the lucene index and pruning it down.  It is pruned down by a junk words file which can be used to control how it gets pruned down.&lt;br /&gt;Once I build the list I run a javascriipt file passing in the results, and then the javascript outputs the cloud.&lt;br /&gt;There are a few files to all of this....&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/TagClouds/JavaSourceCode" class="twikiLink"&gt;JavaSourceCode&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;The source code requires lucene.  Though I wrote it as a Nutch plugin, it does not depend on Nutch.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/TagClouds/JunkWordsFile" class="twikiLink"&gt;JunkWordsFile&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;The junk word file contains terms, and some options.&lt;br /&gt;The options are baked into the code.&lt;br /&gt;&lt;br /&gt;The words do not support regex, they are just matched.&lt;br /&gt;Options inlucde&lt;br /&gt; &lt;br /&gt; -numbers - ignore numbers&lt;br /&gt; -smallwords - skips words with three or less chars&lt;br /&gt; -dashes - ignore terms with dashes&lt;br /&gt; -# :  comments are also supported with #&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/TagClouds/JavaScriptFile" class="twikiLink"&gt;JavaScriptFile&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;This file converts into HTML and uses CSS to dress the cloud.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.osadvisors.com/twiki/bin/view.pl/TagClouds/CloudCssFile" class="twikiLink"&gt;CloudCssFile&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;CSS file is modified off an example i found in a php tag cloud project.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-9021459043036194035?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/9021459043036194035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=9021459043036194035' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/9021459043036194035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/9021459043036194035'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/07/lucene-tag-cloud-generator.html' title='Lucene Tag Cloud Generator'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-148428130154660817</id><published>2007-07-10T14:17:00.000-07:00</published><updated>2007-07-18T10:23:27.489-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='slideshare'/><category scheme='http://www.blogger.com/atom/ns#' term='presentations'/><category scheme='http://www.blogger.com/atom/ns#' term='web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='review'/><title type='text'>Enterprise 2.0 Slideshare Read-Through</title><content type='html'>Watching tech videos on youtube gets boring real quick. No offense to the speakers, being one of them, most are not that exciting.  The points made can be summarized pretty quickly and better absorbed through the presentation material, which was worked on for a longer period of time than the presentation itself (sometimes). I am getting to be a fan of &lt;a href="http://www.slideshare.net/"&gt;SlideShare&lt;/a&gt; and recently dove into quite a few slideshare presentations about Web 2.0.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Good Reads&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;By far #1 - Wikinomics&lt;/span&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;object type="application/x-shockwave-flash" data="https://s3.amazonaws.com:443/slideshare/ssplayer.swf?id=70097&amp;doc=wikinomics-winning-with-the-enterprise-2086" width="425" height="348"&gt;&lt;param name="movie" value="https://s3.amazonaws.com:443/slideshare/ssplayer.swf?id=70097&amp;doc=wikinomics-winning-with-the-enterprise-2086" /&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.slideshare.net/slgavin/meet-charlie-what-is-enterprise20/1"&gt;Meet Charlie&lt;/a&gt; - Quick read, but message is we are all going to work online.&lt;br /&gt;&lt;a href="http://www.slideshare.net/janetjohnson/gross-blog-anatomy-dissecting-blogs-from-a-marketing-perspective"&gt;Dissecting Blogs&lt;/a&gt; - 63 slides, but broken down fairly well. Always good to learn from others experiences.&lt;br /&gt;&lt;a href="http://www.slideshare.net/elsua/apqc-2007-communities-hotbeds-of-innovation-at-ibm"&gt;Community Hotbeds (Jams)&lt;/a&gt; : Any insight into IBM is worthwhile, but slide 30 of 47 was interesting. Creates a visual network of connections via your emails. Within a large company I think this information would be valuable to understand how and who people interact with.  Maybe even used to automate building networks.&lt;br /&gt;&lt;a href="http://www.slideshare.net/revells/sowing-the-seeds-of-enterprise20-in-a-global-organization/"&gt;Sowing the seeds of Enterprise 2.0&lt;/a&gt; - Good visuals in a preso, will be using this style myself. But I like this quote in defining 'enterprise 2.0' "The future has already arrived. It's just not evenly distributed yet"&lt;br /&gt;&lt;a href="http://www.slideshare.net/slgavin/an-enterprise-20-case-study"&gt;Enterprise 2.0 Case Study &lt;/a&gt;- Great style for 172 slides! Found this to be motivational.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Somewhere in the middle of the road&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://www.slideshare.net/thomas.purves/enterprise-20"&gt;Enterprise 2.0&lt;/a&gt; - Trying to make the jump from web 2.0 to enterprise 2.0 by adding the concept of the tacit media. I am not sure I follow, and from what I do grok, not sure I agree.&lt;br /&gt;&lt;a href="http://www.slideshare.net/rtodd/value-creation-in-enterprise-20/"&gt;Enterprise 2.0&lt;/a&gt; : Folks working on defining Enterprise 2.0, but still does not have me convinced in the definition.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Don't rush to read.&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://www.slideshare.net/ross/ross-mayfields-enterprise-20-keynote-at-interop"&gt;Enterprise 2.0 Keynote&lt;/a&gt; - Wiki this, wiki that, but I think the message is 'distribution is disruption'.&lt;br /&gt;&lt;a href="http://www.slideshare.net/noriaki/enterprise-20-43606/1"&gt;Enterprise 2.0&lt;/a&gt; - 3 slides on saying Web 2.0 in the enterprise is Enterprise 2.0. Not sure I buy this one.&lt;br /&gt;&lt;a href="http://www.slideshare.net/mk.frogpond/social-software-fr-unternehmen"&gt;Social Software&lt;/a&gt; - It's in German but found some interesting sites/links in there.&lt;br /&gt;&lt;a href="http://www.slideshare.net/yooplus/introducing-yooplus/"&gt;YouPlus&lt;/a&gt; - pitch for youplus?&lt;br /&gt;&lt;a href="http://www.slideshare.net/revells/moss-2007-wiki-vs-mediawiki/"&gt;Moss vs Mediawiki&lt;/a&gt; - I just suggest taking a look at the &lt;a href="http://www.wikimatrix.org/"&gt;wiki comparison site&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Link for the full list on &lt;a href="http://www.slideshare.net/tag/enterprise2-0/"&gt;Slide Share is here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Sribd has a collection of &lt;a href="http://www.scribd.com/collection/31"&gt;Web2.0 documents&lt;/a&gt;, but unorganized and many are not worthwhile.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.slideshare.net/rtodd/value-creation-in-enterprise-20/"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-148428130154660817?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/148428130154660817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=148428130154660817' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/148428130154660817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/148428130154660817'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/07/enterprise-20-slideshare-read-through.html' title='Enterprise 2.0 Slideshare Read-Through'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-688622652355632664</id><published>2007-07-08T19:16:00.000-07:00</published><updated>2007-07-10T09:57:13.364-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='projects'/><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><title type='text'>Where do you search for code?</title><content type='html'>I was looking for some open source projects which incorporated integration into a web service.  Searching for things on google is just getting weaker, so I started with phase two: search the repositories.  Here is what I search... Do you search something else?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;a href="http://sourceforge.net"&gt;Sourceforge&lt;/a&gt;&lt;/span&gt;. &lt;br /&gt;The master of all projects Sourceforge is always my first location.  Usually find something there and typically gets me going.&lt;br /&gt;&lt;br /&gt;After this it's more of a list and less of an order...&lt;br /&gt;- &lt;a href="http://www.java.net/"&gt;java.net&lt;/a&gt; - i find the slight to be slow way too often&lt;br /&gt;- &lt;a href="http://rubyforge.org/"&gt;rubyforge&lt;/a&gt; - as i play with ruby more often i peak here (typically using gem)&lt;br /&gt;- &lt;a href="http://www.apache.org"&gt;Apache.org&lt;/a&gt; - Can you guys add a 'project' search.   The generic google search is OK, but how about a search which returns a project and it's major links. &lt;br /&gt;- &lt;a href="http://www.codehaus.org"&gt;codehaus.org&lt;/a&gt; - found some good stuff there&lt;br /&gt;- &lt;a href="http://code.google.com"&gt;code.google.com&lt;/a&gt; - Can you just return a list of projects instead of the junk?&lt;br /&gt;I am sure there are some more repos i have used to search, but those are the main ones. &lt;br /&gt;&lt;br /&gt;I also use &lt;a href="http://www.koders.com"&gt;Koders.com&lt;/a&gt; and recently started playing with &lt;a href="http://www.krugle.com"&gt;Krugle&lt;/a&gt; as well (Thank you for returning a project list, I like this one). &lt;br /&gt;&lt;br /&gt;How do you find a project?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-688622652355632664?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/688622652355632664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=688622652355632664' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/688622652355632664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/688622652355632664'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/07/where-do-you-search-for-code.html' title='Where do you search for code?'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-1824468545530321967</id><published>2007-07-01T20:10:00.000-07:00</published><updated>2007-07-10T09:57:43.247-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='requirements'/><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='architecture'/><title type='text'>Review Google Video- How to design a Good API?</title><content type='html'>Watched a &lt;a href="http://video.google.com/videoplay?docid=-3733345136856180693&amp;hl=en"&gt;google video by Joshua Bloch&lt;/a&gt; on "How to design a Good API".  Great nuggets, something all should listen to every few years. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;1. Start with Requirements and a short Spec (one page is ideal)&lt;/span&gt;&lt;br /&gt;Man, I do agree with this.  When I see a requirement doc coming which is more than a page I get nervous.  But he also reflects on a what a requirement is and promotes thinking in generalization rather than fixed implementation.   Very important for API developer, but to his point important to all developers.   He does caution on overusing this principle to justify over engineering.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2. Prototyping good. Write Plugins. Write Example Code.&lt;/span&gt; &lt;br /&gt;Code early, Code Often.  Nothing better than doing. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;3. You need a lead!&lt;/span&gt;&lt;br /&gt;APIs can get over constrained, over engineered, designed by committe, and just plain messed up without direction and decisions.  You need an architecture and architect to make decisions and now when to commit. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4. Real world use will flush out bad.&lt;/span&gt; &lt;br /&gt;Hmm... it will also at times propagate bad behavior.   And he does suggest that as well. I do think there is a whole in his thought process as it relates to longevity of platforms and APIs.  I think that whole is that one constraint is time. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;5. Name everything as long and obfuscated as possible.&lt;/span&gt;&lt;br /&gt;Ha.. Just getting your attention. Of course he said name it simple, name it smart. Code should read for a 5th grader. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;6. Document Religously for Reusability&lt;/span&gt;&lt;br /&gt;Not sure I agree with this one in absolute.  I think someone who documents sets the right tone and probably delivers better code, but I don't think that drives adoption/reusability.  Too many things we all use has NO documentation. Though, I 100% agree better documented is probably just better code. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;7. And as he suggest the biggest nugget (and I agree) "When in doubt leave it out". &lt;/span&gt; &lt;br /&gt;My background and experiences have me brain-trained in this, once an API is published it's there for life.  The CTO I worked with at Bluestone software had a straightforward approach to enforcing this: Change an API and you must change your name on every document you every created since birth, once that is completed you can change the API. &lt;br /&gt;&lt;br /&gt;All in all this should absolutely be taught in high school computing as part of the basics.&lt;br /&gt;&lt;br /&gt;Many more nuggets to review, but here are some other links and blogs about the topic&lt;br /&gt;&lt;a href="http://blogsearch.google.com/blogsearch?um=1&amp;tab=wb&amp;client=firefox-a&amp;ie=utf-8&amp;oe=utf-8&amp;rls=org.mozilla%3Aen-US%3Aofficial&amp;q=How%20to%20Design%20a%20Good%20API%20and%20Why%20it%20Matters"&gt;Blog Search&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="450" height="500"&gt;&lt;param name="allowScriptAccess" value="SameDomain" /&gt;&lt;param name="movie" value="http://static.scribd.com/FlashPaperS3.swf?guid=908bil5xonqxe&amp;document_id=33655" /&gt;&lt;embed width="450" height="500" src="http://static.scribd.com/FlashPaperS3.swf?guid=908bil5xonqxe&amp;document_id=33655" type="application/x-shockwave-flash"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-1824468545530321967?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/1824468545530321967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=1824468545530321967' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1824468545530321967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1824468545530321967'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/07/review-google-video-how-to-design-good.html' title='Review Google Video- How to design a Good API?'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8378387400314424863</id><published>2007-06-22T05:16:00.000-07:00</published><updated>2007-06-22T10:29:09.557-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology adoption'/><category scheme='http://www.blogger.com/atom/ns#' term='platform'/><category scheme='http://www.blogger.com/atom/ns#' term='esb'/><category scheme='http://www.blogger.com/atom/ns#' term='market'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>Multi-sided Platforms for Business or Software</title><content type='html'>The paper about &lt;a href="http://hbswk.hbs.edu/item/5710.html"&gt;Multi-Sided Platforms&lt;/a&gt; published by &lt;a href="http://hbswk.hbs.edu/faculty/ahagiu.html"&gt;Andrei Hagiu&lt;/a&gt; sparked my thoughts about technology platforms vs market platforms and how they relate to each other.  Two sided markets of buyers and sellers are most efficiently brought together via a platform, for example the stock market is a platform which has been replicated globally.  I think most impressive about the stock market is first it was a platform which leveraged people, and now one driven by technology. &lt;br /&gt;&lt;br /&gt;A market platform strives to gain &lt;a href="http://en.wikipedia.org/wiki/Economies_of_scale"&gt;economies of scale &lt;/a&gt; the more which is driven through the platform the more you reduce cost.  Andrei's paper talks about both reducing the search cost and transaction cost.  The paper does not go deeper to understand which software platforms/frameworks can best be used to drive down search and transaction costs.  I would suggest the foundation for building a market platform based on technology would have to start with some form of middleware.  I however think this can be used to look back in time to consider the market dynamics of J2EE, .NET, Corba, and IMO continues to plague the scripting languages vs structured languages (maybe perception, but none-the-less).  &lt;br /&gt;&lt;br /&gt;What I learned from Andrei's article is that providing a typical platform which offers economies of scale is only considered a single sided platform.  Single sided platforms are business as usual, you sell a product and leverage a platform by which to sell this in greater scale.  &lt;br /&gt;&lt;br /&gt;A TWO sided (and specifically I refer to a two sided market) builds a platform which aims for economies of scale and &lt;span style="font-weight:bold;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Network_effect"&gt;positive indirect network effects&lt;/a&gt;&lt;/span&gt;.   The latter to me is more buyers more sellers, more sellers more buyers and a big giant snowball from there.  The stock market, Amazon, and your local supermarket are two sided markets.  They bring product X to consumer Y in a market place.  Technology geared towards two sided markets include the Integration Platform and Enterprise Services Bus (Producer and Consumer).&lt;br /&gt;&lt;br /&gt;A multi-sided market (to me) is "something Z" interacting with "product X" delivered to "consumer Y.  An example... &lt;a href="http://www.happymeal.com/surfsup/#Home"&gt;Happy Meals&lt;/a&gt;!  In the most current form, Sony Pictures is delivering the message about their movie &lt;a href="http://www.sonypictures.com/movies/surfsup/index.html"&gt;Surf's Up&lt;/a&gt; (something Z), which is interacting with &lt;a href="http://www.mcdonalds.com/"&gt;McDonald's food products&lt;/a&gt;, being &lt;a href="http://http://www.photographersdirect.com/buyers/stockphoto.asp?imageid=1071400"&gt;consumed by children&lt;/a&gt; (probably not a good thing).   In this example "Happy Meals" is the platform, it is the repeatable process.   A multi-sided market has economies of scale and multiple network effects. &lt;br /&gt;&lt;br /&gt;And finally a multi-sided market "technology" platform enables "something Z" to be created (and arguably deployed) based on the model (both data and services) stored within in "product X".  I believe examples of multi-sided market "technology" platforms include Salesforce.com, mobile providers, gaming systems and www.blogger.com.   Though I would argue that some of these technology platforms are more OPEN/FREE MARKET driven than others (&lt;a href="http://brew.qualcomm.com/brew/en/about/about_brew.html"&gt;BREW&lt;/a&gt; in the mobile space is annoying).  Also, just offering web api's does not make you make a multi-sided market technology platform!  You must also provide the ability for "something Z" to be deployed in/on/around your platform.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8378387400314424863?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8378387400314424863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8378387400314424863' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8378387400314424863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8378387400314424863'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/06/multi-sided-platforms-for-business-or.html' title='Multi-sided Platforms for Business or Software'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8271023228873604071</id><published>2007-06-19T19:01:00.000-07:00</published><updated>2007-06-22T05:15:44.940-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='lucene'/><category scheme='http://www.blogger.com/atom/ns#' term='tag cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Creating a Tag Cloud</title><content type='html'>First I was very frustrated, I was attempting to figure out how to generate a 'field' cloud from a &lt;a href="http://lucene.apache.org/"&gt;lucene&lt;/a&gt; index.  I was googling '&lt;a href="http://www.google.com/search?hl=en&amp;q=%22tag+cloud%22+generator+lucene&amp;btnG=Search"&gt;"tag cloud" generator lucene'&lt;/a&gt; and I just could not find my way.  My view is google at times is losing the simplicity of it's core strength.  I wasted some time, but eventually attempted to search in google's &lt;a href="http://blogsearch.google.com/blogsearch?hl=en&amp;um=1&amp;tab=wb&amp;ie=UTF-8&amp;q=%22tag+cloud%22+generator+&amp;btnG=Search+Blogs"&gt;blog search&lt;/a&gt; and finally found a collection of &lt;a href="http://www.technacular.com/2007/04/22/collection-of-toolssites-to-create-tag-cloud/"&gt;"tag cloud" generators&lt;/a&gt;. And finally found a &lt;a href="http://randomcoder.com/articles/building-a-tag-cloud-in-java"&gt;java cloud generator&lt;/a&gt; as a starting point.   And that while interesting as it is fully integrated into &lt;a href="http://hibernate.org"&gt;hibernate&lt;/a&gt; is used to generate a cloud from the index created behind the data within your application.  &lt;br /&gt;&lt;br /&gt;So... I gave up and built it myself, but got a head start from two projects&lt;br /&gt;a. &lt;a href="http://www.getopt.org/luke/"&gt;Luke, Lucene Index Toolbox.&lt;/a&gt;  Great tool for working Lucene. On the first page there is a list of terms, so I started by reviewing that code base. &lt;br /&gt;b. A good &lt;a href="http://www.lotsofcode.com/php/tutorials/tag-cloud"&gt;PHP example&lt;/a&gt; with some basic CSS and leveraging of SPAN tags, also reviewed the PHP code to see how they randomize and divine strength of item within cloud. &lt;br /&gt;&lt;br /&gt;I chose to crawl from my blog and indexing a few times -topN 2000, so not a very large crawl, but enough to generate the dataset.  And from that data the cloud on top which is based on the 'content' field, and if you scroll all the way to the &lt;a href="#sitecloud"&gt;bottom&lt;/a&gt; there is a cloud based on the &lt;span style="font-weight:bold;"&gt;site&lt;/span&gt; field.&lt;br /&gt;&lt;br /&gt;I will post the code once I get it cleaned up. If you need it sooner just let me know.&lt;br /&gt;Here is the example cloud I am able to generate. &lt;br /&gt;&lt;style&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;.word {&lt;br /&gt;font-family: Tahoma;&lt;br /&gt;padding: 4px 4px 4px 4px;&lt;br /&gt;letter-spacing: 3px;&lt;br /&gt;}&lt;br /&gt;span.size1 {&lt;br /&gt;color: #000;&lt;br /&gt;font-size: 2.4em;&lt;br /&gt;}&lt;br /&gt;span.size2 {&lt;br /&gt;color: #333;&lt;br /&gt;font-size:2.2em;&lt;br /&gt;}&lt;br /&gt;span.size3 {&lt;br /&gt;color: #666;&lt;br /&gt;font-size: 2.0em;&lt;br /&gt;}&lt;br /&gt;span.size4 {&lt;br /&gt;color: #999;&lt;br /&gt;font-size: 1.0em;&lt;br /&gt;}&lt;br /&gt;span.size5 {&lt;br /&gt;color: #aaa;&lt;br /&gt;font-size: 1.6em;&lt;br /&gt;}&lt;br /&gt;span.size6 {&lt;br /&gt;color: #bbb;&lt;br /&gt;font-size: 1.4em;&lt;br /&gt;}&lt;br /&gt;span.size7 {&lt;br /&gt;color: #ccc;&lt;br /&gt;font-size: 1.2em;&lt;br /&gt;}&lt;br /&gt;span.size8 {&lt;br /&gt;color: #ddd;&lt;br /&gt;font-size: .8em;&lt;br /&gt;}&lt;br /&gt;//--&gt;&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="word size3"&gt; &amp;nbsp;products &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;software &amp;nbsp; &lt;/span&gt;&lt;span class="word size3"&gt; &amp;nbsp;real &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;main &amp;nbsp; &lt;/span&gt;&lt;span class="word size3"&gt; &amp;nbsp;blog &amp;nbsp; &lt;/span&gt;&lt;span class="word size3"&gt; &amp;nbsp;tools &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;links &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;source &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;business &amp;nbsp; &lt;/span&gt;&lt;span class="word size3"&gt; &amp;nbsp;news &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;services &amp;nbsp; &lt;/span&gt;&lt;span class="word size1"&gt; &amp;nbsp;search &amp;nbsp; &lt;/span&gt;&lt;span class="word size3"&gt; &amp;nbsp;policy &amp;nbsp; &lt;/span&gt;&lt;span class="word size1"&gt; &amp;nbsp;privacy &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;documentation &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;community &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;contact &amp;nbsp; &lt;/span&gt;&lt;span class="word size3"&gt; &amp;nbsp;service &amp;nbsp; &lt;/span&gt;&lt;span class="word size2"&gt; &amp;nbsp;view &amp;nbsp; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8271023228873604071?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8271023228873604071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8271023228873604071' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8271023228873604071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8271023228873604071'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/06/creating-tag-cloud.html' title='Creating a Tag Cloud'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-9133461115627612031</id><published>2007-06-13T15:24:00.000-07:00</published><updated>2007-06-15T07:14:28.897-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='audio book review'/><title type='text'>Book Review - Audio Books</title><content type='html'>I 'listen' to audio books on tape/cd/audible. For a period of time I had a commute of almost an hour each way and for that year of time listened to over 50 audio books. At this point I have listened to about 100 and I just bought two more today ( &lt;a href="http://www.amazon.com/gp/product/1591841666?ie=UTF8&amp;tag=opensouradvi-20&amp;amp;linkCode=as2&amp;camp=1789&amp;amp;creative=9325&amp;creativeASIN=1591841666"&gt;The Dip: A Little Book That Teaches You When to Quit (and When to Stick)&lt;/a&gt;&lt;img style="border: medium none ; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=opensouradvi-20&amp;l=as2&amp;amp;o=1&amp;a=1591841666" border="0" height="1" width="1" /&gt; by &lt;a href="http://sethgodin.typepad.com/"&gt;Seth &lt;/a&gt;&lt;a href="http://sethgodin.typepad.com/"&gt;Godin&lt;/a&gt; and &lt;a href="http://search.barnesandnoble.com/booksearch/isbnInquiry.asp?z=y&amp;amp;EAN=9780760785218&amp;itm=2"&gt;"Codes of Power"&lt;/a&gt; ). First the list of 5 audio books in my collection which come to mind immediately.&lt;br /&gt;&lt;br /&gt;1. &lt;a href="http://www.amazon.com/gp/product/0446526126?ie=UTF8&amp;amp;tag=opensouradvi-20&amp;linkCode=as2&amp;amp;amp;amp;amp;amp;amp;camp=1789&amp;creative=9325&amp;amp;creativeASIN=0446526126"&gt;Ten Things I Wish I'd Known Before I Went Out into the Real World&lt;/a&gt;&lt;img style="border: medium none ; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=opensouradvi-20&amp;l=as2&amp;amp;o=1&amp;a=0446526126" border="0" height="1" width="1" /&gt; by &lt;a href="http://www.firstlady.ca.gov/"&gt;Maria Shriver&lt;/a&gt; is a great reflection on life. When I first read it I was caught off guard how good it was.&lt;br /&gt;&lt;br /&gt;2. &lt;a href="http://www.amazon.com/gp/product/0066620996?ie=UTF8&amp;amp;tag=opensouradvi-20&amp;linkCode=as2&amp;amp;amp;amp;amp;amp;amp;camp=1789&amp;creative=9325&amp;amp;creativeASIN=0066620996"&gt;Good to Great: Why Some Companies Make the Leap... and Others Don't&lt;/a&gt;&lt;img style="border: medium none ; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=opensouradvi-20&amp;l=as2&amp;amp;o=1&amp;a=0066620996" border="0" height="1" width="1" /&gt; by &lt;a href="http://www.jimcollins.com/"&gt;Jim Collins&lt;/a&gt; I am more of a fan of the biographies from Jack Welch and other leaders, but I thought this was a testimony to execution.&lt;br /&gt;&lt;br /&gt;3. &lt;a href="http://www.amazon.com/gp/product/0374500010?ie=UTF8&amp;amp;tag=opensouradvi-20&amp;linkCode=as2&amp;amp;amp;amp;amp;amp;amp;camp=1789&amp;creative=9325&amp;amp;creativeASIN=0374500010"&gt;Night&lt;/a&gt;&lt;img style="border: medium none ; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=opensouradvi-20&amp;l=as2&amp;amp;o=1&amp;a=0374500010" border="0" height="1" width="1" /&gt; by Elie Wiesel is a story of the Holocaust and while always painful to read about should not be forgotten.&lt;br /&gt;&lt;br /&gt;4. &lt;a href="http://www.amazon.com/gp/product/0786868414?ie=UTF8&amp;amp;tag=opensouradvi-20&amp;linkCode=as2&amp;amp;amp;amp;amp;amp;amp;camp=1789&amp;creative=9325&amp;amp;creativeASIN=0786868414"&gt;Leadership&lt;/a&gt;&lt;img style="border: medium none ; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=opensouradvi-20&amp;l=as2&amp;amp;o=1&amp;a=0786868414" border="0" height="1" width="1" /&gt; by Rudolph Giuliani - Just love his persistence and execution, a very detailed oriented person. These are the type of business and leadership stories you learn the most from.&lt;br /&gt;&lt;br /&gt;5. &lt;a href="http://www.amazon.com/gp/product/0060510250?ie=UTF8&amp;amp;tag=opensouradvi-20&amp;linkCode=as2&amp;amp;amp;amp;amp;amp;amp;camp=1789&amp;creative=9325&amp;amp;creativeASIN=0060510250"&gt;Bobby Fischer Goes to War: How A Lone American Star Defeated the Soviet Chess Machine (P.S.)&lt;/a&gt;&lt;img style="border: medium none ; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=opensouradvi-20&amp;l=as2&amp;amp;amp;amp;amp;amp;amp;o=1&amp;a=0060510250" border="0" height="1" width="1" /&gt; by David Edmonds - I 'listened' to this book while painting my son's room (when we has a newborn) a little over three years ago so it just always pops to my head and I enjoyed it.&lt;br /&gt;&lt;br /&gt;Here is my current collection of audiobooks (some I had given a rating a few years back), if you want an opinion or start a thread on a book just let me know.&lt;br /&gt;&lt;br /&gt;A Passion to Win (Sumner Redstone) (8/10)&lt;br /&gt;A theory of relativity (8/10 - novel)&lt;br /&gt;Alexander Hamilton&lt;br /&gt;And if you play Golf, you are my friend&lt;br /&gt;Animosity&lt;br /&gt;Anthony Robbins - Get The Edge&lt;br /&gt;Anthony Robbins - Personal Power&lt;br /&gt;Best Practices Building your business with Customer Focused Solutions&lt;br /&gt;Big Picture Investing&lt;br /&gt;Bobby Fischer Goes To War &lt;br /&gt;Brian Tracy - The Luck Factor &lt;br /&gt;Brian Tracy - The psychology of Selling and The Art of Closing Sales &lt;br /&gt;Buffetology (9/10)&lt;br /&gt;Built To Last (8/10)&lt;br /&gt;Candide&lt;br /&gt;Codes of Power&lt;br /&gt;Daniel Goleman - Emotional Intelligence &lt;br /&gt;Denis Waitley - How to build your child's self esteem&lt;br /&gt;Dianetics (L. Ron Hubbard) &lt;br /&gt;Dip - Seth Goldin&lt;br /&gt;Don't send a resume&lt;br /&gt;eLeadership&lt;br /&gt;Execution (CD) - Larry Bossidy &amp; Ram Charan - 8/10&lt;br /&gt;First Son&lt;br /&gt;Good business&lt;br /&gt;Good To Great (8/10)&lt;br /&gt;Grammar Smart (CD)&lt;br /&gt;Gravity (Science Fiction)&lt;br /&gt;Greenback&lt;br /&gt;Harvard Business Review - March 2004&lt;br /&gt;How to become a Great Boss&lt;br /&gt;How to become CEO&lt;br /&gt;How to Challenge yourself and others to greatness&lt;br /&gt;How to get started in real estate investments (3/10)&lt;br /&gt;How to read a person like a book (5/10)&lt;br /&gt;How to supervise people&lt;br /&gt;Intuition&lt;br /&gt;Joys of Yiddish&lt;br /&gt;Leadership Rudolph W. Giuliani&lt;br /&gt;Life Strategies (Dr. Phil) (3/10)&lt;br /&gt;Lightposts for living (1/10)&lt;br /&gt;Linked&lt;br /&gt;Lives of Moral Leadership (7/10)&lt;br /&gt;Lord of the Rings (CD)&lt;br /&gt;MacArthurs War&lt;br /&gt;Maps in a mirror, Short Fiction of Orson Scott Card (Science Fiction)&lt;br /&gt;Masterthinker - Dr. Edward Debono ( 1/10)&lt;br /&gt;Mavericks at work&lt;br /&gt;Me and Hank&lt;br /&gt;Moby Dick - (8/10)&lt;br /&gt;Multiple streams of income&lt;br /&gt;Mystic Places (2/10)&lt;br /&gt;Napolean Hill - The Science of Personal Achievemen&lt;br /&gt;Nicholas Nickleby&lt;br /&gt;Night, Elie Wiesel&lt;br /&gt;Often Wrong, Never in Doubt - Donny Deutsche&lt;br /&gt;On Negotiationg (Mark McCormack) (8/10)&lt;br /&gt;Our lady of the freedoms&lt;br /&gt;Pattern Recognition&lt;br /&gt;Pocket MBA Series - Analyzing Financial Statements&lt;br /&gt;Pocket MBA Series - Growing and Managing a Business&lt;br /&gt;Pocket MBA Series - Leadership and Vision (7/10)&lt;br /&gt;Pocket MBA Series - Sales and Marketing&lt;br /&gt;Pocket MBA Series - Tracking and Controlling Cost&lt;br /&gt;Principle-Centered Leadership - Stephen R. Covey (8/10)&lt;br /&gt;Profitable Growth is Everyone's Business &lt;br /&gt;Purple Cow&lt;br /&gt;Six Days of WAR&lt;br /&gt;Six Sigma -&lt;br /&gt;Somebody's gotta say it&lt;br /&gt;Staying street smart in the internet age&lt;br /&gt;Stephanopoulus&lt;br /&gt;Stephen Covey - Living the Seven Habbits&lt;br /&gt;Ten Things I wish I knew before I went out into the real world - Maria Shriver (9.5/10)&lt;br /&gt;The alchemy of finance&lt;br /&gt;The E Myth revisited&lt;br /&gt;The Essential 55.&lt;br /&gt;The Explosive Child&lt;br /&gt;The Fabric of the Cosmos &lt;br /&gt;The Four Pillars of Investing (CD) (8/10)&lt;br /&gt;The Goal&lt;br /&gt;The Google Story&lt;br /&gt;The great unraveling (8/10)&lt;br /&gt;The innovators Dilemma&lt;br /&gt;The intelligent investor (7/10)&lt;br /&gt;The Japanese Art of War&lt;br /&gt;The lexus and the olive tree &lt;br /&gt;The Long Tail&lt;br /&gt;The No Asshole Rule&lt;br /&gt;The portable MBA in Economics&lt;br /&gt;The Power of Intention&lt;br /&gt;The Richest Man in Babylon and the Magic Story&lt;br /&gt;The roaring 2000s investor&lt;br /&gt;The Secret of Shambhala&lt;br /&gt;The secrets of great investors&lt;br /&gt;The sonnets (Shakespeare)&lt;br /&gt;The Virtues of Aging&lt;br /&gt;The Wild Blue&lt;br /&gt;Tom Jones&lt;br /&gt;When you come to a fork in the road, Take It! - Yogi Berra&lt;br /&gt;Wherever you go there you are&lt;br /&gt;Winning with the Market&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-9133461115627612031?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/9133461115627612031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=9133461115627612031' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/9133461115627612031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/9133461115627612031'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/06/book-review-audio-books.html' title='Book Review - Audio Books'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-5571567544885048841</id><published>2007-05-15T10:55:00.000-07:00</published><updated>2007-05-31T04:50:24.932-07:00</updated><title type='text'>Down Ruby Down.</title><content type='html'>&lt;a href="http://www.fallenrogue.com/articles/197-Rails-vs-Java"&gt;Rails vs Java&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;That was dumb!  So 'Rails' is a packaged framework and server....&lt;br /&gt;I think that's called an application server.    I remember the packaged c/java application servers circa 1997.  First they are simple, then they bloat, and then they float.  After all that you learn what worked and what failed, you build it modular because all needs are not created the same.   Then you learn that inflexibility is more economical than flexibility, so you package it with different configurations.  You learn what configurations are demanded the most and you start to move resources to those projects and bloat those all over again.   Then comes ruby to make believe like it's saving the day, but really it's just trying to get you to begin all over again.&lt;br /&gt;&lt;br /&gt;I am not against Ruby, just not sure it will not have the same problems.&lt;br /&gt;&lt;a href="http://stdlib.rubyonrails.org/"&gt;http://stdlib.rubyonrails.org/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.devdaily.com/Dir/Ruby/Libraries/"&gt;http://www.devdaily.com/Dir/Ruby/Libraries/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.caliban.org/ruby/"&gt;http://www.caliban.org/ruby/&lt;/a&gt;&lt;br /&gt;And GEMS within ruby is a psuedo-rpm'ish package/installation system.&lt;br /&gt;&lt;br /&gt;And I do believe that the simplest form of building web applications has not yet emerged.  I am still trying to understand why the template engine approach was not the cure-all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-5571567544885048841?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/5571567544885048841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=5571567544885048841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/5571567544885048841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/5571567544885048841'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/05/down-ruby-down.html' title='Down Ruby Down.'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8990950065102306617</id><published>2007-05-02T16:01:00.000-07:00</published><updated>2007-05-04T04:44:38.642-07:00</updated><title type='text'>No more school books!</title><content type='html'>This is just not right, I am sitting in class listening to my professor speak about macro-economics and throwing out terms out left and right.  As he chats up a topic, I write some notes (using &lt;a href="http://docs.google.com/Doc?id=dcs6tkdp_4hhptk7"&gt;google docs&lt;/a&gt;).  I then toss the term into search, and typically get a hit at &lt;a href="http://www.wikipedia.org/"&gt;wikipedia.&lt;/a&gt;  I toss the link into my notes and quick read the the first paragraph.   The definition is a match to my professor's description and has quite a bit more supporting details.  He mentions "Sealed Air" and their special dividend, quick search and wala &lt;a href="http://pages.stern.nyu.edu/%7Eigiddy/cases/sealedair.htm"&gt;"Sealed Air Case Study".&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;First, wow.   What's changed since the time I did my undergrad.  Wireless! Fedora! Online Services! it's just amazing to think what will happen when these solutions are productive.  The combination/impact of social tools and knowledge/content tools has to be the beginning of a new set of productivity capabilities by which we educate ourselves.  I remember being ahead of the curve XX years ago as it relates to using tech at school, but now it's becoming almost productive.  Awesome.&lt;br /&gt;&lt;br /&gt;Second, no more school books.   With all this content, this access, shouldn't we teach without paper? Shouldn't the education system save millions of dollars by leveraging these resources?   So, down to the basement I go looking for an old text book.   I find an old algebra book and check out a few sections&lt;br /&gt;* Equations and Inequalities in One Variable *&lt;br /&gt;and find &lt;a href="http://tutorial.math.lamar.edu/AllBrowsers/1314/SolveMultiVariable.asp"&gt;"Paul's online math notes"&lt;/a&gt;&lt;br /&gt;and &lt;a href="http://www.mathtv.com/subscription/index.htm"&gt;Math TV&lt;/a&gt; (a subscription service)&lt;br /&gt;and &lt;a href="http://www.analyzemath.com/equations_inequalities.html"&gt;Analyze Math&lt;/a&gt;&lt;br /&gt;and a presentation done in the Missouri Rockwood school district &lt;a href="http://www.google.com/url?sa=t&amp;ct=res&amp;amp;cd=26&amp;url=http%3A%2F%2Fwww.rockwood.k12.mo.us%2Fmarquette%2Fwerner%2FHonors_Algebra_II%2FCh1%2FChapter%25201%2520Notes.ppt&amp;amp;ei=J2I5RrT3M57SggT4m7n7Ag&amp;usg=AFrqEzfuoxGrTNr80FqoAYTReydYaLcbwQ&amp;amp;sig2=oNrutIajwZrfkuz_rIq74g"&gt;[ppt]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Well needless to say the content is out there, it's available. Some good, some bad, but it's out there.    I think the program/curriculum teachers use are separated from the content anyway, so why not use this widely available to content married to the curriculum.     I realize this statement is naive as many smarter folks have been thinking about this, how to marry social networking with practical education.     For me today I felt it was all connecting and felt somewhat productive in it's use.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8990950065102306617?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8990950065102306617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8990950065102306617' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8990950065102306617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8990950065102306617'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/05/no-more-school-books.html' title='No more school books!'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-3777620983736771359</id><published>2007-04-06T08:34:00.000-07:00</published><updated>2007-04-06T09:50:40.610-07:00</updated><title type='text'>Marketing Project - Local Auction House</title><content type='html'>Last semester I took the 500 level marketing course for my MBA.  We were required to do a psuedo business plan.  Of couse I wanted to do one on open source software however we were barred from doing something related to work.   While at first annoyed by this, I enjoyed tackling a problem not related to the everyday stuff.   Suggested by someone with a background in art and auction houses we noodled on the idea of the auction house.  We figured we could tackle this problem with three parameters (a) it has to be regional (Philadelphia) but high end (b) goal is to increase revenue over three years and (c) we needed to bring in folks which where potential future auction house attendees.&lt;br /&gt;&lt;br /&gt;Our assumptions about the existing auction market is that it catered to higher income folks typically without children in the home anymore.   So our sites were set on regional high-income with families.  After thinking about this post the assignment, I realize we could have been further fine grained, in that what age bracket should the children be in and what &lt;a href="http://en.wikipedia.org/wiki/Psychographic"&gt;psychographic&lt;/a&gt; behaviors might we want.  These things would further help refine the target segment and ability to reach that audience.   &lt;br /&gt;&lt;br /&gt;The idea then was to introduce a second set of auctions for the auction house to run focusing less on antique art and collectibles, but more on unique items relevant for the decoration, design, and placement within kids environments.   We are not talking about toys or items they get the pleasure of breaking ( I have two boys I know the pain ), but items which are treasured used to create a unique environment.   Our suggestion was a mixed product line of items 55% art, 25% toys (collectible), 15% clothing (unique, regional designer), 5% misc (leveraging traditional product line).   &lt;br /&gt;&lt;br /&gt;Realizing that a regional auction house prides itself on brand, tackling the second product line has to be done with the same screening and passion for excellence.  The goal is not to increase revenue by just bringing in more feet, but attracting folks with the eye for excellence and potential future auction house goers.&lt;br /&gt;&lt;br /&gt;Realize, this was not a scientific study, nor did time allow us to become super-experts but we did have some fun with it.  &lt;a href="http://us.f13.yahoofs.com/bc/44024049m6c3d1e8e/bc/Marketing+Project/AuctionHouse+mktg-plan.pdf?bfGmnFGBizT2ZzD7"&gt;Marketing Plan.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;We had four good resources of information&lt;br /&gt;1. Demographic information.  On this topic you have to love the government they sure keep track of lot's of information.   We used &lt;a href="http://factfinder.census.gov/"&gt;American Fact Finder&lt;/a&gt; and  the &lt;a href="http://www.census.gov/acs/www/index.html"&gt;American Community Survey&lt;/a&gt;.    The information valuable to us (and just interesting i guess )&lt;br /&gt;* about 200,000 folks 25-34 years of age in the Philly area&lt;br /&gt;* about 200,000 folks 35-44 years of age in the Philly area&lt;br /&gt;* And of those 400,000 folks about 19,000 earn greater than 100,000$&lt;br /&gt;&lt;br /&gt;2. &lt;a href="http://www.auctioneers.org/"&gt;National Association of Auctioneers&lt;/a&gt; Was a great source of information about the auction house.   Lot's of good stats in there about how much is spent on auctions, differences between live and web,  differences between regions and information on type of products sold at auction.&lt;br /&gt;&lt;br /&gt;3. Past sales of an auction house.  &lt;a href="http://www.pookandpook.com/"&gt;Pook and Pook&lt;/a&gt; has information online of all &lt;a href="http://pook.securesites.net/catalogs/past.php"&gt;past sales&lt;/a&gt;.  We aggregated that information from 2003 to present. &lt;br /&gt;- median for items (referred to as a lot) sold was about 700$&lt;br /&gt;- each year they sold from 5600 to 8000 items sold&lt;br /&gt;- prices ranged from less than 100$ to almost 500,000$&lt;br /&gt;Interesting for me was the range in prices of items sold. While their public auction prices are disclosed they probably do other work as well which is not part of the standard auction process.&lt;br /&gt;&lt;br /&gt;4. Attended live auction.   This was a great experience.   Regardless of the fact I was trying to understand the auction process and the auction crowd the event was a lot of fun.  If you have not attended a live art and antique auction you should.    As for the auction process I learned quite a bit including that there are four sources of bids&lt;br /&gt;* book - people who write in bids before the event. &lt;br /&gt;* floor - people who live attend the event&lt;br /&gt;* phone - folks who can dial in via the phone to make bids on items&lt;br /&gt;* web - they are connected via Ebay's live auctioneer tools to take bids directly from ebay.&lt;br /&gt;My experience was the HIGH priced items were typically purchased by folks on the phone, rather than the floor.&lt;br /&gt;&lt;br /&gt;All in all it was a great experience, both the project and learning a little about the auction process.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-3777620983736771359?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/3777620983736771359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=3777620983736771359' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/3777620983736771359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/3777620983736771359'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/04/marketing-project-local-auction-house.html' title='Marketing Project - Local Auction House'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-5307621370676358971</id><published>2007-02-18T09:10:00.000-08:00</published><updated>2007-02-20T06:45:06.253-08:00</updated><title type='text'>Ice Skating and Persistence</title><content type='html'>Another week of ice skating with my son, but it was THE day.  The day which he let go of my hand and  made his own way.   He let go and went round and round the rink.   He fell a few times, got up and said - "No big deal, you get up and you try again".   I skated behind him the rest of the time, my eyes tearing up with joy.   I had made him a promise, when he skates the rink by himself he gets a hockey jersey.  We left the rink went right to the store and bought that jersey.   &lt;br /&gt;&lt;br /&gt;Blue had a good weekend and I implemented a dynamic capability to add new hosts, services, contacts, groups, ...   This is an important step for blue, dynamic ability to acquire new inventory and persist it.  Next step is to build an addition to plugins so you could start from scratch and just dynamically add inventory - no more brute force configuration.  Important point though....  The persisted configuration is done in a nagios format, so you could pick up the configuration and just use it in a nagios installation!!!!  This will also allow you dynamically to add nagios configuration files to blue as well.&lt;br /&gt;&lt;br /&gt;So both events were excting to me, but only one made me tear up with pride.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-5307621370676358971?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/5307621370676358971/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=5307621370676358971' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/5307621370676358971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/5307621370676358971'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/02/ice-skating-and-persistence.html' title='Ice Skating and Persistence'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-8649501694557813192</id><published>2007-02-09T07:04:00.000-08:00</published><updated>2007-02-12T23:08:25.633-08:00</updated><title type='text'>RPM, Java and frustration</title><content type='html'>First in the past 6 months for whatever reason I ditched my windows box and completely living my life on Fedora.   There have been some painful moments, but overall experience has been good.  After getting into the groove of things I can develop, work and play as always.   Open Office is good I just crave for it do more and do it faster.  Marcf &lt;a href="http://marcf.blogspot.com/"&gt;(blog)&lt;/a&gt;  has a differnt opinion, and I hear you Marc, it just takes a commitment and ability to forget some of the key strokes engrained in your brain by years of using a single OS (one step back, then two steps forward).   So I am now one of the converted, not yet religous, but converted. &lt;br /&gt;&lt;br /&gt;Great, and I should probably talk more about my experiences in the conversion, but today it's about RPMs.   Not using RPMs, installation of RPMs are GREAT, SIMPLE, QUICK.  I have been using yumex and life is pretty good.&lt;br /&gt;&lt;br /&gt;As a java developer RPMs feel wrong and more specifically rpmbuild is annoying.   And if you suggest jpackage, DON'T.   I believe in well defined and slim containers with application isolation.  I believe in 'rpm -i' and RUN.  I believe that an application should have one requirement - the JVM.   I am confused by the desire of jpackage to have all my libraries referenced, leading to DLL hell.  I am confused by rpmbuild as a driver for my build system as opposed to a tool for building an RPM.   I am confused that the LSB model is pushed all the way up to the application level.  &lt;br /&gt;&lt;br /&gt;I like the RPM model and in this case would really like to see two things (1) a solid ant integration with RPMs so I could skip 'rpmbuild',  'spec files', 'faking rpm dir structure', ... and  (2) RPMs for applications rather than core OS.   Maybe something for me to tackle.&lt;br /&gt;&lt;br /&gt;So... what did i do/hack for blue...&lt;br /&gt;1. I build my rpm information within ant task&lt;br /&gt;first creating RPM directory structure&lt;br /&gt;second load spec file in rpm/SPECS&lt;br /&gt;third layout files into my 'buildroot' which will be rpm/INSTALL&lt;br /&gt;&lt;code&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build}/rpm/RPMS" /&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build}/rpm/SPECS" /&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build}/rpm/SOURCES" /&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build}/rpm/BUILD" /&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build}/rpm/SRPMS" /&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build}/rpm/INSTALL" /&gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;copy todir="${build}/rpm/SPECS" file="blue-plugins.spec" /&gt;&lt;br /&gt;  &amp;lt;copy todir="${build}/rpm/INSTALL/usr/lib/nagios/plugins/" &gt;&lt;br /&gt; &amp;lt;fileset dir="${dist-plugins}" /&gt;&lt;br /&gt;  &amp;lt;/copy&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;2. call rpm ant task&lt;br /&gt;&lt;code&gt;&lt;br /&gt;  &amp;lt;rpm specfile="blue-plugins.spec" topdir="${build}/rpm" command="--bb  --buildroot=${build}/rpm/INSTALL" /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;3. the simple spec file!&lt;br /&gt;&lt;code&gt;&lt;br /&gt;Summary: Blue Java Plugins, Blue is a port of Nagios to Java&lt;br /&gt;Name: blue-plugins&lt;br /&gt;Version: 0.8&lt;br /&gt;Release: 1&lt;br /&gt;License: GPL&lt;br /&gt;Group: Applications/System&lt;br /&gt;URL: http://blue.sourceforge.net/&lt;br /&gt;Vendor: Blue&lt;br /&gt;Packager: Richard Friedman &lt;richardfriedman@yahoo.com&gt;&lt;br /&gt;Prefix: %{_prefix}/lib/nagios/plugins&lt;br /&gt;BuildArchitectures: noarch&lt;br /&gt;&lt;br /&gt;%description&lt;br /&gt;bla bla bla&lt;br /&gt;&lt;br /&gt;%prep&lt;br /&gt;&lt;br /&gt;%build&lt;br /&gt;&lt;br /&gt;%install&lt;br /&gt;&lt;br /&gt;%files&lt;br /&gt;/usr/lib/nagios/plugins/&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-8649501694557813192?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/8649501694557813192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=8649501694557813192' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8649501694557813192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/8649501694557813192'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/02/rpm-java-and-frustration.html' title='RPM, Java and frustration'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-3391008003244000795</id><published>2007-02-05T10:08:00.000-08:00</published><updated>2007-02-05T10:40:08.647-08:00</updated><title type='text'>HP Acquires Bristol</title><content type='html'>Another &lt;a href="http://www.webwire.com/ViewPressRel.asp?aId=27066"&gt;acquisition&lt;/a&gt;, this time HP (&lt;a href="http://finance.yahoo.com/q?s=hpq&amp;x=0&amp;y=0"&gt;HPQ&lt;/a&gt;) buys &lt;a href="http://www.bristol.com/"&gt;Bristol Technologies&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Bristol's Transaction Vision, is defined as follows. &lt;br /&gt;TransactionVision® provides Business Process Monitoring that dramatically increases visibility into your customer facing transactions. Just as you would track overnight packages from origination to delivery, TransactionVision tracks customer transactions throughout their entire lifecycle. &lt;a href="http://www.bristol.com/transactionvision/"&gt;[source]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;One of the interesting points in their literature, which I found useful, is ability to track transaction information through &lt;a href="http://www.bristol.com/tvwp/"&gt;MQ and J2EE&lt;/a&gt;.  Having been responsible for a large scale middleware environment using both J2EE and MQ we faced this very problem.  We were able to build significant monitoring capabilities around our J2EE platform using some of our stuff and &lt;a href="http://www.wilytech.com/solutions/products/Introscope.html"&gt;Wily's Introscope&lt;/a&gt;.   However, as soon as the message left and went to the bus we lost a lot of visibility and information about how much time it spent where.    The tools around MQ only provided for us general information.   If Bristol's Transaction Vision helps look deeper, than that is good.  However,  not sure I could have justified more tooling around monitoring MQ as we already had incurred the expense of monitoring our middleware environment.  In this case, IBM should have better out-of-box tools for deeper monitoring within MQ.  Maybe they do today, it has been a couple of years since I last touched that environment. &lt;br /&gt;&lt;br /&gt;So while Transaction Vision seems to have bridged visibility across some environments, I am still confused as to HP's acquisition.   They seem to have quite a bit technology in this space '&lt;a href="http://h20229.www2.hp.com/products/tran/index.html"&gt;Transaction Analyzer&lt;/a&gt;' and '&lt;a href="http://h20229.www2.hp.com/products/bpi/index.html"&gt;Business Process Insight&lt;/a&gt;' being two of them.   Does Bristol complete, complement, or replace for them?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-3391008003244000795?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/3391008003244000795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=3391008003244000795' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/3391008003244000795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/3391008003244000795'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/02/hp-acquires-bristol.html' title='HP Acquires Bristol'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-1739624070826257625</id><published>2007-02-01T18:50:00.000-08:00</published><updated>2007-02-01T19:18:29.204-08:00</updated><title type='text'>Dell and Systems Management</title><content type='html'>Earlier this week there was 'Symantec acquires Altiris' and in the latter half of the week I read the article about Michael Dell taking the helm.  It was in the article &lt;a href="http://www.informationweek.com/news/showArticle.jhtml;jsessionid=WLXBTNALQNOKOQSNDLRSKH0CJUNN2JVN?articleID=197002522&amp;pgno=4&amp;queryText="&gt;"Can Michael Dell find his Mojo?"&lt;/a&gt; on page 4 that they suggest that for Dell (the company) to move ahead it needs to build its strength in systems management.  Will this really help Dell? I guess from a purely dollars perspective maybe they gain more adoption because they can complement it with their own systems managmenet software, reduce the cost for large installations and have a more complete one shop packaging for mid to large business. But did it help HP to have OpenView, IBM to have Tivoli?&lt;br /&gt;&lt;br /&gt;At some point in time it probably did, but if it is critical to have those type of systems how did Dell get that far? How did they gain a leadership position over HP and IBM?  How come IBM sold off the PC business since they had Tivoli  (the largest player in systems management).   HP's renewed momentum is because of leadership, not because they have Open View.   What people want from DELL is the best DELL product and service, how Michael Dell defines the culture of the company will define how they deliver that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-1739624070826257625?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/1739624070826257625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=1739624070826257625' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1739624070826257625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/1739624070826257625'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/02/dell-and-systems-management.html' title='Dell and Systems Management'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-266265355650744194</id><published>2007-01-31T07:37:00.000-08:00</published><updated>2007-01-31T07:57:37.035-08:00</updated><title type='text'>Supply and Demand</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7A4qtBT8llc/RcC7h_sH5II/AAAAAAAAAAM/6pTCynCftfU/s1600-h/supplydemand.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_7A4qtBT8llc/RcC7h_sH5II/AAAAAAAAAAM/6pTCynCftfU/s200/supplydemand.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5026223376852051074" /&gt;&lt;/a&gt;&lt;br /&gt;Currently I am enrolled in the MBA program at &lt;a href="http://www.sbm.temple.edu/"&gt;Temple&lt;/a&gt; and this semester taking the graduate level economics course.   This is all good, and professor seems to love the topic, which makes for a fun course. &lt;br /&gt;However, for those thinking about doing your MBA, do it now don't put it off.   I have had previous opportunities to go for my MBA before I had kids, and when I had employers that would cover a much bigger portion of the bill.   Big mistake it only gets harder and I think you have less time to get the other benefits of networking and socializing that you might get if you can spend more time getting involved. &lt;br /&gt;Also my guess is that if you mapped the value of an MBA relative to age, so your Y is value of MBA vs X being your age,  value is much higher the younger you are maybe mid 20's?  While this might be true and the value I receive might be diminished, it keeps me learning and that is worth it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-266265355650744194?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/266265355650744194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=266265355650744194' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/266265355650744194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/266265355650744194'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/01/supply-and-demand.html' title='Supply and Demand'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_7A4qtBT8llc/RcC7h_sH5II/AAAAAAAAAAM/6pTCynCftfU/s72-c/supplydemand.gif' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-7806846402389996689</id><published>2007-01-29T14:12:00.000-08:00</published><updated>2007-01-29T19:06:26.489-08:00</updated><title type='text'>Symantec, Altiris, and the field.</title><content type='html'>Does anyone know the amount of systems management vendors in business, how many are up and coming, how many have vanished and how many have gone open source ?   &lt;br /&gt;&lt;a href="http://www.marketwire.com/mw/release_html_b1?release_id=208284"&gt;Symantec acquires Altiris&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And who makes up the top 5 these days?  IBM, HP, CA, BMC and now Symantec?&lt;br /&gt;&lt;br /&gt;Every time I check out a VC site I find at least one 'management vendor' and let's check out this list from &lt;a href="http://www.accel.com/"&gt;Accel Partners&lt;/a&gt;&lt;br /&gt;* Broad Jump (Acquired by Motive, listed below)&lt;br /&gt;* Hyperic  (Recently went open source)&lt;br /&gt;* Mendocino Software &lt;br /&gt;* Motive&lt;br /&gt;* Remedy ( Acquired by BMC )&lt;br /&gt;* Wily ( Acquired by CA? )&lt;br /&gt; &lt;br /&gt;And to pick another random VC, &lt;a href="http://www.mayfield.com/"&gt;Mayfield Fund&lt;/a&gt;&lt;br /&gt;* IT Groundwork - Open source systems management (nagios ;)&lt;br /&gt;* Cemaphore &lt;br /&gt;* Centrify &lt;br /&gt;* ... getting tired of this ;)&lt;br /&gt;&lt;br /&gt;Get it.  There are a lot of them, and managing systems is important.  There are a lot of ways to do it, and many projects and products are willing to help you ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-7806846402389996689?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/7806846402389996689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=7806846402389996689' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/7806846402389996689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/7806846402389996689'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/01/symantec-altiris-and-field.html' title='Symantec, Altiris, and the field.'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-2614396960782442163</id><published>2007-01-29T12:11:00.000-08:00</published><updated>2007-01-29T12:16:50.968-08:00</updated><title type='text'>Ice Skating and Coding</title><content type='html'>Absolutely not related. &lt;br /&gt;I took my 5 year old,  ice skating this weekend, first time and he did a great job.   But earlier I had spent the morning working on Blue.   Some how everyday I get a combination of the real world and my virtual world, life is good.   &lt;br /&gt;Synchronized Blue with Nagios 2.7, pretty simple.  Also, had someone offer to Maven'ize project blue (http://sourceforge.net/projects/blue), looking forward to seeing that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-2614396960782442163?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/2614396960782442163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=2614396960782442163' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/2614396960782442163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/2614396960782442163'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/01/ice-skating-and-coding.html' title='Ice Skating and Coding'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7851685393638840715.post-2463969833412685566</id><published>2007-01-23T19:41:00.000-08:00</published><updated>2007-01-23T19:46:33.158-08:00</updated><title type='text'>Blue, a java port of nagios.</title><content type='html'>Took on this project in my spare time quite a while ago and very excited by the progress it is making. While I am a big fan of nagios there were three things preventing me from getting invovled&lt;br /&gt;&lt;br /&gt;a. develop on windows. I tried hard to get things working with cygwin, but had problems especially with plug-in development.&lt;br /&gt;&lt;br /&gt;b. build to deploy. I just like to download and run, with as little constraints as possible. I talked to other nagios users in production environments and they had similar desire.&lt;br /&gt;&lt;br /&gt;c. java developer. While I can still code in C/C++ I have been developing in java for so long now that I just find my way around a lot quicker. Also, like to leverage what is built into things like jboss, jetty and tomcat and other great projects.&lt;br /&gt;&lt;br /&gt;So, what did I do? I rewrote nagios in java, and calling it blue. I rewrote the server, the console and some of the plugins. You can run blue in any combination with existing nagios components and configuration files. However, blue server, console, and plugins out of the box can just run in a self-contained location on any OS.&lt;br /&gt;&lt;br /&gt;Stay tuned for a distribution as it is coming shortly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7851685393638840715-2463969833412685566?l=richardfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://richardfriedman.blogspot.com/feeds/2463969833412685566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7851685393638840715&amp;postID=2463969833412685566' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/2463969833412685566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7851685393638840715/posts/default/2463969833412685566'/><link rel='alternate' type='text/html' href='http://richardfriedman.blogspot.com/2007/01/blue-java-port-of-nagios.html' title='Blue, a java port of nagios.'/><author><name>Richard Friedman</name><uri>http://www.blogger.com/profile/12335979565378149876</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry></feed>
