<?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-6119642438456856589</id><updated>2011-07-08T05:57:41.259-04:00</updated><category term='flash'/><category term='media'/><category term='yahoo'/><category term='javascript'/><category term='java'/><category term='olpc'/><category term='web'/><category term='apple'/><category term='programming'/><category term='perl'/><category term='microsoft'/><category term='actionscript'/><category term='itunes'/><title type='text'>multipart response</title><subtitle type='html'>a tech blog</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Joseph Annino</name><uri>http://www.blogger.com/profile/09662118913953806739</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>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6119642438456856589.post-3405662737827143451</id><published>2009-09-24T19:18:00.001-04:00</published><updated>2009-09-24T19:21:08.297-04:00</updated><title type='text'>Re: Entelligence: Have we demonized DRM?</title><content type='html'>In response to:&lt;br /&gt;&lt;a href="http://www.engadget.com/2009/09/24/entelligence-have-we-demonized-drm/"&gt;Entelligence: Have we demonized DRM?&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;New business models that couldn't exist otherwise? If a business model has to assume that every customer is a potential criminal that cannot be trusted in order to get the executives to sign off on it, maybe that business model has no business existing, or maybe those people in suits need to move on and understand that business models that strive to redefine reality always fail in the long term.&lt;br /&gt;&lt;br /&gt;My problem with DRM is not so much the restrictions on content that demand that I pay for it. I understand people want to be compensated for their work, and I do so whenever possible but it is simply the right thing to do and often (but not always) the easiest thing to do. However all these restrictions come with bad side effects, like invasion of privacy, elimination of choice, and eventual forced obsolescence.&lt;br /&gt;&lt;br /&gt;Engadget sits at an interesting crossroads. A blog that promotes technology that is owned by a content company (Time Warner) that is trying to figure out how it will exist in this new networked world.&lt;br /&gt;&lt;br /&gt;My advice is don't treat customers like criminals, make your content easy to get to in as many ways and places as possible, realise the new opportunities technology can provide, and don't whine about the bonanzas of the old way which the new reality just can no longer support. Yes, for people with MBAs this can be damn scary, but business is about risk and reward, so start thinking harder and take some chances.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-3405662737827143451?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/3405662737827143451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=3405662737827143451' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/3405662737827143451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/3405662737827143451'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2009/09/re-entelligence-have-we-demonized-drm.html' title='Re: Entelligence: Have we demonized DRM?'/><author><name>joeaguy</name><uri>http://www.blogger.com/profile/06589685179844731388</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-6119642438456856589.post-7004645233200638458</id><published>2009-08-26T13:59:00.001-04:00</published><updated>2009-08-26T14:01:03.115-04:00</updated><title type='text'>Health care letter to Lieberman, Dodd, and Murphy</title><content type='html'>&lt;div&gt;I am writing because I feel a public option is an essential part of the current effort to draft health care reform legislation, and as my representative, I ask that you work to be sure a bill that includes this becomes law.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Some background.  I am a self-employed computer programmer.  When I was looking for an individual health policy, my applications to several companies were all rejected due to "build", or a nice way of saying I weigh too much for them to want to do business with me.  I then found that Connecticut has a health reinsurance risk pool I could join to get coverage.  Its expensive coverage with a large deductible.  I hope it will be there for me should there be a large emergency, but in terms of preventative care, it doesn't do much.  My biggest issue though is that in my situation I have no other choices.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The plan is operated by United Healthcare, and in many ways resembles the sort of "alternatives" that are being floated to a public option.  If I want any health insurance, I have no choice but to pay high premiums for low service to a company that uses some of my money to work against my own best interest.   I hate that in order to be protected in case of an emergency, I am funding lobbyists, lawyers, and executives that manipulate government to be sure I cannot get anything better.  To add insult to injury, the state sponsors this privatized plan, directing money to a company that is working against the interests of the state’s citizens.  I worry some of the proposed alternatives for the federal health care bill will do just that, but on an even larger scale, being essentially a "gift" to those that continue to manipulate the system, making any chance for real change that much harder.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I want a way I can opt-out of the current system and get health insurance without paying for lobbyists or executives that work against me getting the best care I can.  I understand a public option isn't free.   I make good money, so I wouldn't be surprised to pay more than others that cannot afford as much.  What I want is a choice that gives me a voice as an individual.  With government I have a voice and I have a vote.   That I am writing this letter exemplifies that.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Lets start to turn back the sham of privatization that forces people to be invested against their own best interests and is leading this country on a race to the bottom.  Health care is just one area where this needs to happen, and its a big first step to realigning power back to individuals.  This country is greatest when individuals can shape the system according to their own best interests, and the so called conservative forces that purport to do that have sold us a false bill of goods in unethical, established corporate systems we cannot escape or effect.   It is up to our representatives to give choice and power back to the individuals of this nation when the systems that have propped themselves up artificially have failed us.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please vote for and support a health care reform bill that includes a public option.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-7004645233200638458?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/7004645233200638458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=7004645233200638458' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/7004645233200638458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/7004645233200638458'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2009/08/health-care-letter-to-lieberman-dodd.html' title='Health care letter to Lieberman, Dodd, and Murphy'/><author><name>joeaguy</name><uri>http://www.blogger.com/profile/06589685179844731388</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-6119642438456856589.post-1221535447441835830</id><published>2009-07-13T19:05:00.002-04:00</published><updated>2009-07-13T19:21:42.364-04:00</updated><title type='text'>Which laptop?</title><content type='html'>My iMac at home is over 3 years old now. The Applecare is up and most importantly, it is maxed out at 2gb of RAM.  While I don't do anything too processor intensive, I do keep lots of apps open to do my work, and this quickly eats up all the memory.  If I want to run Vmware to test something in Windows, then everything comes to a crawl, or I have to quit several apps.  Plus, I would like to get a laptop so I have some flexibility about where I do my work.&lt;br /&gt;&lt;br /&gt;I do have an Acer Aspire One netbook, and its great, I am using it right now, but with its 1gb of memory and small screen its not great for working on for long periods, or on anything too complicated.&lt;br /&gt;&lt;br /&gt;Apple's MacBook Pros are beautiful.   I could easily transition all my stuff from my current Mac over to one of those and be up and running smoothly.  However they are very pricey.  The reality is, if you consider inflation, the cost of Mac laptops is about half what it was 6-7 years ago, but the cost of laptops in general is about a quarter of what is was.  Although pricey, I know I'll get at least 3 good years out of a Mac.  With a PC, for less money, I can get a lot more power and features, but the battery life, size, weight, and build quality won't be there.  From all I have looked around, the price difference between eqivalent or better PC laptops (save the above issues) is $500 to over $1000 over a similar Mac.  This is especially apparent with Sony's new FW series which seriously beats out the 17" MacBook Pro for around $1500 compared to $2300 or more.&lt;br /&gt;&lt;br /&gt;So my Mac still would work great for non-work stuff, where it has what is still reasonably good graphics and processor.  For work, what I need most is memory, to keep a lot of stuff running at once, and to get PC with 4GB is a pretty easy to find.  So I'm also looking at the Acer Timeline laptops.  They go for around $600-$700 and are about the same dimensions as the MacBook Air, but with less of a processor, and up to 8 hours battery life.  One of those would be great for portability, and on the wallet, but I probably would want to upgrade it sooner, but at that price I could buy one a year for 3 years and end up spending about the same as I would on a Mac. Running Linux, it could handle all I need for work quite nicely.&lt;br /&gt;&lt;br /&gt;So I keep putting off getting anything while I think this over.  If only Apple would lower their prices in some serious way.  I love Macs, but they have become more fashion than technology, and the pricing proves it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-1221535447441835830?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/1221535447441835830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=1221535447441835830' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/1221535447441835830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/1221535447441835830'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2009/07/which-laptop.html' title='Which laptop?'/><author><name>joeaguy</name><uri>http://www.blogger.com/profile/06589685179844731388</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-6119642438456856589.post-268903596787607139</id><published>2009-01-19T20:31:00.002-05:00</published><updated>2009-01-19T20:34:37.907-05:00</updated><title type='text'>Social CPAN : Finding the best and most popular modules</title><content type='html'>&lt;p&gt;CPAN should be a popularity contest.  Why?  There is tons of great stuff on CPAN, but knowing what is considered the best, most used, most stable, most loved, can be hard.  Lots of people use search.cpan.org, but there needs to be better easier ways to capture their knowledge for the benefit of others.&lt;/p&gt;&lt;p&gt;There is a rating and reviews system, but most stuff has no rating or reviews, and you can't sort the results by ratings (as far as I can tell).  Also the ratings interface isn't available from the pod doc pages of modules, only from the main page for the distribution, which is looked at less often.  The review information for the distribution should be accessible in the right hand bar of all modules in the distribution.&lt;/p&gt;&lt;p&gt;But to get good data on usage and quality quickly, there should be more than that.   What if you could create a user account on a cpan frontend website.  You could use it to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Star distributions as favorites&lt;/li&gt;&lt;li&gt;Get a homepage listing your starred modules and any news relating to them&lt;/li&gt;&lt;li&gt;Quickly give a star rating and/or review to a distribution&lt;/li&gt;&lt;li&gt;Get popularity ratings on distribution based on other user's stars and ranks&lt;/li&gt;&lt;li&gt;See popularity based on the number of other distributions that depend on a particular distribution&lt;/li&gt;&lt;li&gt;Include any of the above in searches&lt;/li&gt;&lt;li&gt;Use a command line tool to submit information about what modules you're using in a given project&lt;/li&gt;&lt;li&gt;Usual social network stuff, like linking to friends and professional contacts.&lt;/li&gt;&lt;li&gt;Relate your account to accounts on other perl sites, like this one, so people can find you in all the different corners of the perl universe.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The distro level tools should always be available on module pages, in some mini form in the right hand nav, since those are the pages people are really looking at when they come to CPAN.&lt;/p&gt;&lt;p&gt;There has been a lot of talk about getting some "buzz" going about Perl, and this sort of thing just might help.  CPAN is a great resource, but it can be a bit hard to deal with its breadth.   I think a lot of great things have been done around annotating things on CPAN so far, and something like the above would just make it better, and help bring it all together, and maybe get some of those tools used a little more.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Posted to: &lt;a href="http://perlmonks.org/index.pl?node_id=737447"&gt;PerlMonks&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-268903596787607139?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/268903596787607139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=268903596787607139' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/268903596787607139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/268903596787607139'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2009/01/social-cpan-finding-best-and-most.html' title='Social CPAN : Finding the best and most popular modules'/><author><name>joeaguy</name><uri>http://www.blogger.com/profile/06589685179844731388</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-6119642438456856589.post-6749783274376988651</id><published>2008-11-21T23:48:00.003-05:00</published><updated>2008-11-22T00:00:21.284-05:00</updated><title type='text'>blogging and toys</title><content type='html'>Ok, so I am pretty bad about blogging.  I do have enough to do, and there is already so much noise on the internet.  I do sit in front of computers a lot and I would like to have a little more of that time go into creating instead of consuming.&lt;br /&gt;&lt;br /&gt;Speaking of consuming, it seems the last time I tried this I had gotten a new toy, an OLPC.  The shine on it kind of wore off, with the kinda odd sugar interface, difficulty in running "real" software, its odd screen, and not so easy to type on keyboard.  Still I think its a great project and a bit of a collectors item.  What the OLPC did do very well is show that bigger isn't always better.  There is a place for smaller, not as fast, not as expensive computers, to fill in those spaces where the big stuff just doesn't fit well.&lt;br /&gt;&lt;br /&gt;So that's why I just got an netbook, the Acer Aspire One.  Small, under 3lbs, its a go anywhere, easy to whip out and do something useful on sort of machine.   The keyboard on it is great, which is all important for actually creating things.  And when it comes to consuming it does well too, with a nice high res screen that is good for reading web sites and technical docs on, and it can play back Internet video decently enough.   I've gotten a lot of comments on it from "Is that a DVD player?" to "My laptop is too big for me and I'd like something small".&lt;br /&gt;&lt;br /&gt;So Apple says these netbooks are a bit of a fad.  Well knowing how they are all about changing the playing field, they probably are right.   They are just a scaling down of regular old laptops. I think something in this form factor will come along that is revolutionary.  Something with a touch screen and great voice recognition and a display that is even more comfortable to read (something reflective instead of light emitting maybe).  Apple had this great knowledge navigator video from back in the 90s, and I keep hoping they start actually making one soon.&lt;br /&gt;&lt;br /&gt;So new toys have gotten be writing again for a bit.  Let's see how long it lasts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-6749783274376988651?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/6749783274376988651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=6749783274376988651' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/6749783274376988651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/6749783274376988651'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2008/11/blogging-and-toys.html' title='blogging and toys'/><author><name>joeaguy</name><uri>http://www.blogger.com/profile/06589685179844731388</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-6119642438456856589.post-136046691578258074</id><published>2008-02-09T13:45:00.000-05:00</published><updated>2008-02-09T13:47:10.052-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yahoo'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><title type='text'>MS to Yahoo, I'm With Stupid</title><content type='html'>&lt;div&gt;            &lt;p&gt;Remember when Yahoo was the internet darling, the site everyone made their home page, what everyone used for their search engine, the directory your site just had to be in?  The gay 90's.  Its amazing to think its been about 10 years since all the cool kids started talking about Google.  Back then search engines changed like fashion, Yahoo, Lycos, Hotbot, Altavista, then Yahoo again.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;Yes, Yahoo again.  Yahoo pioneered web search, then fell out of favor, and brought itself back with internet apps.  Web mail, calendars, photos, profiles, messaging, home pages, news, on and on.  These apps sprang up in a world before Flash applications, AJAX, and broadband connections.  They had no choice but to keep things simple, to let the web be what it is best, textual.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;In this early web all you have is the technology itself, no matter how limited.  Slickness and big fancy images and crazy interfaces won't help you because they will take too long to load for anyone to care.  The same goes for advertising.  Ironically the limits of the technology forced Yahoo into good, clean, simple design people liked.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;Forward to today, and everyone is afraid is Google.  Google I think succeeds not because of what they do, but what they don't do.  They set out to rethink corporate culture and assumptions to center around technology and turn that technology into business, instead of going about it the other way around like everyone else.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;The Google apps of today look kind of like the Yahoo apps of 5 to 10 years ago, simple, text based, and uncluttered with unobtrusive advertising.  They are not lacking for client side technologies, as they often represent the state of the art for use of Javascipt and Flash.   But they don't have slick glossy design or in your face advertising.  Even with all of the latest tech, the keep to the mantra "Keep it simple stupid".&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;Now look at Microsoft.   They are dying to be Google, to have that following, that level of usage, but they go about it by being more of a yahoo than Yahoo.  MS web apps are the opposite of Google.  Showy, large, and impressive, this also tends to make them cumbersome, so that wow factor wears off fast.  They are often more concerned with making deals and being able to market their technology than the usefulness of the technology itself.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;So now Yahoo will be Microsoft, and will it matter?  "Keep it simple stupid" means if you don't, you are stupid.  It will simply be a bigger company making more of what people don't want.  It might be able to make more and bigger board room deals, which may be bad for competition at least in theory, but in reality, they will continue to make products people just don't want.   Unless they can figure out an other way to coerce and lock us in like they did with Windows, the new MS-Yahoo will go nowhere.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;The purchase price of Yahoo is so high, an MS is so determined to have them, this just may well be MS building their own coffin.  Regardless of what missteps it has taken, MS has always been so flush with cash that it could weather any storm, taking multiple versions to finally get something right, only to screw it up again.  Buying Yahoo squanders that safety net, and without a net, Microsoft is much more likely not to survive a fall.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&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/6119642438456856589-136046691578258074?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/136046691578258074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=136046691578258074' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/136046691578258074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/136046691578258074'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2008/02/ms-to-yahoo-im-with-stupid.html' title='MS to Yahoo, I&apos;m With Stupid'/><author><name>Joseph Annino</name><uri>http://www.blogger.com/profile/09662118913953806739</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-6119642438456856589.post-218677418040276661</id><published>2008-01-20T10:02:00.000-05:00</published><updated>2008-01-20T10:11:32.941-05:00</updated><title type='text'>Dangers of Remote Scripting</title><content type='html'>Came across this article recently: &lt;a href="http://radar.oreilly.com/archives/2008/01/dangers_of_remo.html"&gt;Dangers of Remote Scripting&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This does raise an interesting problem that is hard to solve. Partnerships that involve running remote javascript are an important part of a lot of web sites. Its a powerful technology, allowing richer ads, content syndication, and outsourcing of page components, so business logic in javascript isn’t going to go away. It does increase your attack surface because a compromise of any of your partners can effect your site, as it did here.&lt;br /&gt;&lt;br /&gt;You can’t really do any sort of validation in javascript, because the logic to do so would be out in the open and easily faked. I think a hybrid approach might be the best solution. Have your server do a “secret handshake” with the partner every so often, and if it fails then don’t display the script tag for their service. The handshake could go as far a cryptographic signing system that requires active support on the partner’s server, or it could be a passive system that checks for the existence of certain hidden urls and that the whois information hasn’t changed.&lt;br /&gt;&lt;br /&gt;Any other ideas?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-218677418040276661?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/218677418040276661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=218677418040276661' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/218677418040276661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/218677418040276661'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2008/01/dangers-of-remote-scripting.html' title='Dangers of Remote Scripting'/><author><name>joeaguy</name><uri>http://www.blogger.com/profile/06589685179844731388</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-6119642438456856589.post-5628457534697504025</id><published>2008-01-17T21:12:00.000-05:00</published><updated>2008-01-18T00:17:59.806-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='media'/><category scheme='http://www.blogger.com/atom/ns#' term='itunes'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Apple as a Cable Company</title><content type='html'>Apple's recent announcement for &lt;a href="http://www.apple.com/appletv/"&gt;Apple TV take 2&lt;/a&gt;, with movie rentals, got me thinking.  This thing is basically a new sort of cable box, one where everything is on demand.  I think its the direction television is going on.  One day there will be no channels, just RSS feeds of shows (podcasts), with new installments posting at regular times.  With all the new tech, a big strike going on, and my huge cable bill, I thought I would do some math and see what the real costs are.&lt;br /&gt;&lt;br /&gt;First the basic assumptions, using me as an example.  I pay about $180 a month for Comcast cable.  About $100 of that is for the video part, which gets me digital cable and DVR on two boxes, and no premium channels.  I watch about 8 shows somewhat regularly, Simpsons, Family Guy, Daily Show, Colbert Report, Ugly Betty, Heroes, Torchwood, Dr. Who.  I won't count news because that is usually free podcasts already.&lt;br /&gt;&lt;br /&gt;iTunes charges $1.99 per show.  Weekly shows have about 4 episodes a month for 6 months, for a total of 20 to 24 episodes in a season.  The season pass saves you a little, so the cost per month per show runs around $7.50.  Since you only actually have to pay that half the year, its more like $3.75 per show.  Daily shows run more like $10 per month, and air about 10 months of the year, for a cost of $8.30 per month.  So my 8 shows are $39.10 per month.&lt;br /&gt;&lt;br /&gt;So $39.10 is cheaper than the $52.50 Comcast wants for standard cable, and is taxed less.  Not everything I watch is available on iTunes, and some of those shows I can watch for free online, although not on an Apple TV.  So dropping the video part of my cable would save me money on regular tv.&lt;br /&gt;&lt;br /&gt;iTunes rents movies for $2.99 to $4.99 each, depending on the age and resolution of the movie.  So I'll assume $4.00 per movie.  With the $60.90 I have left after getting rid of video cable I could rent 15 movies, thats one every other day, a lot more than I usually watch.&lt;br /&gt;&lt;br /&gt;Now I am a rather light TV user.   I think for the heavy watcher iTunes may cost as much or more than cable.  Consider someone who watches prime time shows 4 nights a week.  That is about 5 shows each night, for a total of 20 shows at $3.75 a show per month is $75 a month.   Still better than digital cable.  Plus you actually own copies of the shows when you are done, you can watch again whenever you like.&lt;br /&gt;&lt;br /&gt;Network television made &lt;a href="http://tvb.org/rcentral/adrevenuetrack/revenue/2006/ad_figures_1.asp"&gt;about $48 billion in ad revenue in 2006&lt;/a&gt;.  So with a years worth of a $3.75 a month show costing $45 a year, and assuming the network sees 80% of that, or $36, that means to make $48 billion about 1.1 billion shows need to be watched.   If the average person is me and watches 8 shows, that means about 167 million people have to watch 8 series a year for them to make the same money as they do now.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://www.cia.gov/library/publications/the-world-factbook/print/us.html"&gt;The population of the United States is about 301 million as of July 2007&lt;/a&gt;.   We all watch TV, and a lot of it, so assuming the whole population watches an average of 8 shows network TV would make about $86.5 billion.   You can see why everyone is going nuts, and why the writers strike is so important.  This model of people directly paying for only what they want has a lot of potential to it.  Also imagine Apple or Microsoft getting the other 20%, thats $21 billion.&lt;br /&gt;&lt;a href="http://www.tvb.org/rcentral/mediatrendstrack/tvbasics/09_TimeViewingPersons.asp"&gt;&lt;br /&gt;The average person watches about 4 hours of television a day&lt;/a&gt;, or 28 hours a week.  Some shows are 30 minutes, some are one hour, some are weekly, some are daily, so lets assume 45 minutes per show, and 3/4 of the shows are weekly.  Things cancel out nicely, meaning this average person watches 28 shows.  Lets assume 16 shows, and the rest is 2 hour movies, 8 of them, at $4 each. (16 x $3.75 + 8 x $4) x 12 x 301,000,000 = $332 billion, of which $266 billion goes to the network, and $66 billion goes to the provider.&lt;br /&gt;&lt;br /&gt;Now things are a little more complex then this.  I haven't included the effect of the loss of DVD sales.  I also only considered ad revenue, which would disappear in theory, but in practice there is product placement and other revenue streams.  I think having to pay for each show individually may alter viewing habits, causing less viewing, and since you own a copy, reruns wouldn't deliver any profit, and some shows like news may still be free.  Someone needs to provide all the bandwidth to deliver this to both ends, and be paid for it, but networks would no longer have satellite and broadcast affiliate infrastructure to maintain, and cable would be reduced to an ISP.&lt;br /&gt;&lt;br /&gt;So I don't think anyone is going to make such insanely huge numbers, and there are winners and losers, but the direct approach does have some enormous upside potential.  Current ad revenue is only about 18% of the potential revenue I calculated, so even with rampant piracy, a decline in viewers, and other troubles, the television industry could do pretty well.  Also think of the potential difference in programming if it has to serve viewers directly to get their dollar, instead of being a vehicle to deliver eyes to advertisers who usually hold more sway than the audience.&lt;br /&gt;&lt;br /&gt;All in all, I think this gives an interesting glimpse into what the future could hold if it were allowed to happen.  Media companies have to stop being so scared and just give people what they want, and the money will come.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-5628457534697504025?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/5628457534697504025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=5628457534697504025' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/5628457534697504025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/5628457534697504025'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2008/01/apple-as-cable-company.html' title='Apple as a Cable Company'/><author><name>Joseph Annino</name><uri>http://www.blogger.com/profile/09662118913953806739</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-6119642438456856589.post-4848183286924586853</id><published>2008-01-11T23:48:00.000-05:00</published><updated>2008-01-13T19:20:53.674-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Do What I Mean</title><content type='html'>Computers always do precisely what you tell them too.  That's the problem.  People don't do that.  They understand what &lt;span style="font-style: italic;"&gt;isn't&lt;/span&gt; said.  They know about context, past experiences, accepted norms, what doesn't make sense, and can look at what they are given and figure out what it is and what it can do.  When learning programming many people often get frustrated quickly when they realize computers by default do none of the above.  You need to break problems down into smaller and more specific chunks than you are used to, and there can be a big up front learning curve to knowing what the building blocks are.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I got to thinking about this while working on a project to covert some code from Actionscript 2 to 3.  Actionscript (AS) is part of Flash, a Macromedia, and now Adobe product that started as a design application and slowly morphed over time into a rather capable software development tool.  Designers are an unusual bunch, and they think us programmers are an unusual bunch.  They tend to be some of the least technical people, but their work is done in some of the most complex and expensive software out there.  The special hallmark of design software, is that it is focused around "do what I mean", letting you see a result right away, and then working in a feedback loop with the user to fine tune it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So when I first heard that AS3 is strongly typed, I was really surprised and dismayed.  Actionscript 3 borrows a lot of Java's ideas of how programming in the large should work.  Java is great at programming in the large, and it also is great at making everything into a large program.  It works great for big corporate bean counter types, since its static typing, and almost complete lack of anonymous data structures, make it easy to count the beans.  In order to do that you have to write a lot of code.  There are no assumptions, nothing that tries to look at what you are doing and fill in the missing bits with reasonable defaults, or switch its behavior.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Object oriented isn't good enough.  People don't need to be told what object they are looking at, they can figure it out.  They don't need to be told one object can do something and an other can not, they can look at it and figure it out.  People can communicate in free form associations, without having to declare all the possible things they might say beforehand. &lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;So how do you "do what I mean?".  Its all about introspection and anonymous data.  Write objects that manage sets of other objects, that can look at them and see what abilities they have (available methods), and which they do not, and use them accordingly.  Take arguments as hashes (associative arrays, dictionaries, anonymous objects, whatever you like to call them).  They let you say what you need to without either side needing to know all the possibilities.  Use roles, so new objects can be built up by joining together existing ones, and make those roles do all the things I just mentioned.&lt;br /&gt;&lt;br /&gt;Think of design software, showing a result right away and then working in a feedback loop with the user to fine tune it.  This is how I write code.  I start with something small, and work in a feedback loop with my debugger making correct and larger as I go.  If you API does the above, working this way will make a lot of sense.  If you are building a new API, doing the above will make it expandable without breaking code that already depends on it.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;"Human languages ... differ not so much in what you &lt;span class="Apple-style-span" style="font-style: italic;"&gt;can say&lt;/span&gt; but in what you &lt;span class="Apple-style-span" style="font-style: italic;"&gt;must say&lt;/span&gt;", Larry Wall, from &lt;a href="http://www.perl.com/lpt/a/997"&gt;"Programming is Hard, Lets go Scripting..."&lt;/a&gt;. This statement, and the linked article, sum up where I am going with this quite nicely.  I'm mostly a Perl programmer, and Larry Wall is the father of Perl, a highly dynamic language, some might consider the antithesis of Java.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;AS2 was a lot like JavaScript, an other highly dynamic language.  You could change definitions of objects, throw anonymous data around, use functions as objects, and do all sorts of introspection without too much trouble. In the Javascript world these things make wonderful libraries like prototype.js possible.  AS3 now turns most of that off by default, preferring its Java-like static way of doing things, and making you jump through hoops to get back to the nice old dynamic world.  AS2 had a horrible API to the flash runtime, but that wasn't the language's fault.  What AS3 now needs is an API to make it dynamic again easily, letting the developer choose which approach is best, and bringing the magic back.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-4848183286924586853?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/4848183286924586853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=4848183286924586853' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/4848183286924586853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/4848183286924586853'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2008/01/do-what-i-mean.html' title='Do What I Mean'/><author><name>Joseph Annino</name><uri>http://www.blogger.com/profile/09662118913953806739</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-6119642438456856589.post-369456427484228216</id><published>2008-01-05T18:22:00.000-05:00</published><updated>2008-01-11T23:48:34.202-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='olpc'/><title type='text'>Gave One Got One</title><content type='html'>&lt;div&gt;        &lt;p&gt;&lt;/p&gt;    &lt;p&gt;I am writing this from my newly arrived &lt;a href="http://laptop.org/"&gt;One Laptop Per Child XO laptop&lt;/a&gt;.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;Why did I get one?  Its a part of history.  Its a great program that strives to break poverty by the old saying "Give a man a fish he eats for a day.  Teach a man to fish he eats for a lifetime".  It represents a whole new direction for computing, that represents a whole lot more than this little laptop.  It is an educational appliance.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;The OLPC reminds me very much of my first computer, an &lt;a href="http://oldcomputers.net/atari800.html"&gt;Atari 800&lt;/a&gt;.  An affordable all in one box that used a TV as a monitor, it ran one program at a time, and came with a BASIC languge cartridge so you could write your own.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;The OLPC's interface is organized into activities.  You work in one activity at a time, each taking up the whole screen, although multiple activities can be running at once.  A simple home screen lets you choose activities.  The activities you run and what your work in them are logged in a journal.  An other screen lets you find networks and other OLPCs to share your work with.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;That's it.  There is no desktop, no file manager, control panel, start menu, or overlapping windows.  Nothing to complicate or take away from the running activity.  It is the simplicity of those first home computers reborn.  &lt;/p&gt;    &lt;p&gt;In this way the OLPC does more with less, and makes the creativity and discovery that technology can provide available to whole new groups of people in new places and ways.  The hardware is simple and novel, but the specs are equivalent to what was state of the art maybe seven years ago.&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;For me, having a small computer that weighs just a couple pounds and is so simple is wonderful.   I can browse, type, code, most anywhere.  It fits in a sweet spot between the iPhone and a traditional laptop.  That's a big gap not much else fills well, and may prove to be a new sweet spot for "computers for the rest of us".&lt;/p&gt;    &lt;p&gt;&lt;/p&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/6119642438456856589-369456427484228216?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/369456427484228216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=369456427484228216' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/369456427484228216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/369456427484228216'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2008/01/gave-one-got-one.html' title='Gave One Got One'/><author><name>Joseph Annino</name><uri>http://www.blogger.com/profile/09662118913953806739</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-6119642438456856589.post-5174734936158122335</id><published>2007-12-18T00:19:00.000-05:00</published><updated>2007-12-18T00:32:56.612-05:00</updated><title type='text'>multipart response - part 1</title><content type='html'>I've started up a new blog about tech stuff, the web, programming, and the combination of those things, since it what I do all day.  I'm inspired by the various perl blogs out there (since it is what I work in) and the &lt;a href="http://www.codinghorror.com/"&gt;Coding Horror&lt;/a&gt; guy, since he manages to write something daily, which is pretty amazing, even if they are sometimes a stretch.&lt;br /&gt;&lt;br /&gt;Finding a name that wasn't taken but had the correct amount of geeky cool obscure cleverness was not an easy task.  Multipart Response seems to fit the bill well.&lt;br /&gt;&lt;br /&gt;I set up a blog on blogspot because I was using &lt;a href="http://s9y.org/"&gt;Serendipity&lt;/a&gt; at my hosted site, but I got rather frustrated with an upgrade that just wouldn't work.  So score 1 for application service providers and Google.  Score -1 for umm, applications.&lt;br /&gt;&lt;br /&gt;I hope to post here about weekly.  This message is just to say hello and stake claim on my little corner of the blog world.  Its too late to do much more than sound snarky, so I will see you next time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6119642438456856589-5174734936158122335?l=multipartresponse.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multipartresponse.blogspot.com/feeds/5174734936158122335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6119642438456856589&amp;postID=5174734936158122335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/5174734936158122335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6119642438456856589/posts/default/5174734936158122335'/><link rel='alternate' type='text/html' href='http://multipartresponse.blogspot.com/2007/12/multipart-response-part-1.html' title='multipart response - part 1'/><author><name>Joseph Annino</name><uri>http://www.blogger.com/profile/09662118913953806739</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></feed>
