<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.11.5 (http://www.squarespace.com/) on Fri, 30 Jul 2010 13:19:10 GMT--><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rss="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:cc="http://web.resource.org/cc/"><rss:channel rdf:about="http://codeinthesun.com/home/"><rss:title>Home</rss:title><rss:link>http://codeinthesun.com/home/</rss:link><rss:description></rss:description><dc:language>en-US</dc:language><dc:date>2010-07-30T13:19:10Z</dc:date><admin:generatorAgent rdf:resource="http://www.squarespace.com/">Squarespace Site Server v5.11.5 (http://www.squarespace.com/)</admin:generatorAgent><rss:items><rdf:Seq><rdf:li rdf:resource="http://codeinthesun.com/home/2010/6/4/i-look-forward-to-a-cross-platform-future.html"/><rdf:li rdf:resource="http://codeinthesun.com/home/2010/2/8/flash-isnt-an-open-standard-it-just-creates-them.html"/><rdf:li rdf:resource="http://codeinthesun.com/home/2010/1/5/what-we-have-here-is-a-mess-security-on-the-internet.html"/><rdf:li rdf:resource="http://codeinthesun.com/home/2009/12/28/debugging-fin-people.html"/><rdf:li rdf:resource="http://codeinthesun.com/home/2009/11/26/a-shade-of-gray.html"/><rdf:li rdf:resource="http://codeinthesun.com/home/2009/11/22/how-to-reduce-sinusoidal-depleneration.html"/><rdf:li rdf:resource="http://codeinthesun.com/home/2009/11/22/first-post.html"/></rdf:Seq></rss:items></rss:channel><rss:item rdf:about="http://codeinthesun.com/home/2010/6/4/i-look-forward-to-a-cross-platform-future.html"><rss:title>I look forward to a Cross-Platform future.</rss:title><rss:link>http://codeinthesun.com/home/2010/6/4/i-look-forward-to-a-cross-platform-future.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2010-06-04T16:53:14Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>I have written a BILLION lines of code in my lifetime ( I'm rounding up ). But to date I have only developed for a few different platforms. So, now, &nbsp;I'm considering developing for a new platform, oh I don't know, let's say iPad. I have a BILLION lines of code over here... I have an iPad over here... I put them together and nothing happens. Why?</p>
<p>We are living in 2010 when, in order to for me to communicate with a frenchman, I have to speak french. But I'm looking forward to Star Date 4894 when we have a Universal Translator that make language irrelevant. I'm looking forward to the day when we realize that when I speak, I'm not trying to communicate words, I'm trying to communicate thoughts. And when I code, I'm not trying to tell a computer how to use dot syntax, or whether indenting is important, I'm trying to express logic.</p>
<p>The future is to make platforms irrelevant. The future is&nbsp;to make computer language irrelevant. Our platforms and our languages should work together to make sure that what we say in our code is understood by our platform, regardless of the language the code is in or the platform we are writing to.</p>
<p>Only a few companies like Google and Adobe have seemed to grasp this concept by producing cross-platform tools. In the case of Adobe, their whole business model is based on creating tools that let you create content once, in the language of your choice, and then publish that content to any other platform. PDF, Flash, Digital Negative Format are all examples of this. Google has been focused on making sure one platform, the web, works with everything. Their business model is based on getting as many people as possible to use the web as their platform of choice, regardless of which development tool they use.</p>
<p>Development for a specific platform with a specific language is going to be less-and-less useful as software evolves. There is no reason to have to develop an application 2, 3, 4 times in different languages for different platforms. We all know in our gut that this doesn't make sense. We only do it because we have to. And the only reason why we have to is because the platforms are controlled by companies who want developers to be invested in their platform, and their platform only. But soon enough, there will be enough pressure from us, the coders, the content creators, to force them to allow us to develop in a way that WE choose.</p>
<p>I look forward to that day.</p>
<p>i.am</p>]]></content:encoded></rss:item><rss:item rdf:about="http://codeinthesun.com/home/2010/2/8/flash-isnt-an-open-standard-it-just-creates-them.html"><rss:title>Flash isn't an open standard, it just creates them</rss:title><rss:link>http://codeinthesun.com/home/2010/2/8/flash-isnt-an-open-standard-it-just-creates-them.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2010-02-09T03:37:20Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>So a lot of talk about the death of Flash this month and if you've read any of it, you would know that next month, all the would will embrace as we usher in a new standard, HTML5. It will give us all the power of plugins like Flash, Silverlight, and Unity3D, BUT it will be free, open, and standards based. You may now pour yourself a glass of champaign wile I proceed to ruin your day... 'cause it ain't going to happen.</p>
<p>Full disclosure, I make my living with Flash. And I have heard all of the complaints on the web forums where geeks hang out. Flash is proprietary, crashy, resource intensive, and banner ads use it.</p>
<p>I'll give you a half point each on crashy and resource intensive. Ever since Adobe took over Macromedia ( the original creators of Flash ) they have been way more focused on features than either stability or performance. I think they are finally starting to come around with v10.1 but it is much too little, much too late. Given that, I live in Flash and all I have to say is... quit your whining, it's not that bad. It's certainly not as bad as all of those Firefox plugins you probably have installed. And you have my blessing to install a flash blocked in your browser, I am running one right now.</p>
<p>Which brings me to banner ads. Yeah, they are the worst. But they are definitely NOT going away with HTML5. The HTML5 canvas element was built for banner ads.</p>
<p>So that leaves the proprietary argument. There are a lot of smart people, including me, who think that the web wants to be open and that given the choice, open is always better than proprietary. The problem is that open is slow, reeeeaaaalllllyyyy slow. HTML5 wont be officially ratified in the next year, never mind the next month. Yes, you can use it now, but it's still changing and there are a bunch of different browser incompatibilities. There are also no workable development tools, not to mention it relies on JavaScript which is a tedious programing language at best, so it would reasonably take twice as long for a good developer to code and debug any HTML5 app vs. a Flash app. And probably the biggest issue is that it only delivers the approximate capability of Flash 7, that's 5 years ago. And by the time HTML5 has truely got up to speed as a serious development tool, we will have had at least one, probably two or three new versions of Flash.</p>
<p>My point here is not to beat up on HTML5 because every Flash developer I know is actually really looking forward to it. I don't know any Flash developer who looks forward to building yet another video player. But Flash and similar web plugins are what drives forward progress in web development. The only reason why all of these cool new features are in HTML5 is that they were already in Flash. There will always be a need for plugins because there will always be a need for web developers to push the boundaries. If plugins never existed, we would probably still be using animated GIF's ( I just threw up a little ). I see it as the job of all browser plugins to show us what a standards based web could look like in the years ahead.</p>
<p>Judging but the state of things today, I would say that in five years, we will usher in a new Flash killer called HTML6 which will have true 3D support, a true scripting language ( get lost JavaScript ), one audio and video standard, the ability to tap into computer hardware ( hello full screen mode and web cam usage ), true streaming video, raw binary socket communication, etc. It will be a good day for me because I already have my blog post written ( I hope we still have copy / paste in 5 years ).</p>
<p>i.am</p>]]></content:encoded></rss:item><rss:item rdf:about="http://codeinthesun.com/home/2010/1/5/what-we-have-here-is-a-mess-security-on-the-internet.html"><rss:title>What we have here is a mess: Security on the internet.</rss:title><rss:link>http://codeinthesun.com/home/2010/1/5/what-we-have-here-is-a-mess-security-on-the-internet.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2010-01-06T03:54:32Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p><span style="font-size: 80%;"><em>This post was inspired by listening to a fantastic episode of the Security Now Podcast. You can listen to it here: </em></span><a href="http://twit.tv/sn229"><span style="font-size: 80%;"><em>http://twit.tv/sn229</em></span></a></p>
<p>I just spent the better part of two days tearing up a completely good wireframe for a new web site feature because it simply could not be done do to internet security.</p>
<p>An elegant concept turned into a nightmare when I realized that standard browser security would simply not let us implement it. This realization turned into a inter-departmental scramble to redo the specs. And two full days later we are left with a not-as-great-but-functional web product.</p>
<p>So, what was the cost?</p>
<p>There is the cost to my company in man hours. There is the cost to the user in a slightly less optimal experience. There is the cost down the road when those users who find the web product too frustrating and decide not to give the company their credit card.</p>
<p>What was the benefit?</p>
<p>The users are protected from a potential security vulnerability that to my knowledge has never been exploited.</p>
<p>My point is that internet security is a HUGE cost, Both to the web site owners and the users. And for the most part, it doesn't even work.</p>
<p>I'm not saying that we do not need internet security, we absolutely do. What I am saying is that the whole internet infrastructure is such a broken mess, even the best security measures can only barely protect the average user from exploits, password hacks, and phising scams. And the cost is enormous for the user and the internet companies in time and money. The only people who are making out on this arrangement are the people who perpetrate the scams.</p>
<p>My next blog post will be titled: I Just Moved to Russia and I Have your Bank Account Number</p>
<p>i.am</p>]]></content:encoded></rss:item><rss:item rdf:about="http://codeinthesun.com/home/2009/12/28/debugging-fin-people.html"><rss:title>Debugging F'in People</rss:title><rss:link>http://codeinthesun.com/home/2009/12/28/debugging-fin-people.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2009-12-28T19:51:47Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Since I'm going to be spending a lot of time with the relatives this week I thought I'd take the opportunity to apply my coders ethic to the non-performant people in my life. I decided to debug them.</p>
<p>I traveled home as I usually do this year. My mom asked me to bring a side dish for the holiday meal. I brought a dessert. The message was clear... Let's get this whole ordeal over with as soon as possible. The sooner we can skip to the dessert, the sooner this whole thing will be over and I can go home and fire up the Playstation.</p>
<p>My sister was a challenge but I knew she would be showing up with her new BF like she does every year. I got her a crock pot. Her cooking is horrible, everybody knows it. Her BF, however, will still be under the impression that she is perfect. This will definitely change his mind.</p>
<p>My dad is the only person in my family that I really get along with. I got him a cordless drill. Before the end of the meal he was already fixing the hinges on the bathroom door, and making a complete mess. My mom didn't even notice that I spilled red wine on her table cloth.</p>
<p>It was a good holiday.</p>
<p>i.am</p>]]></content:encoded></rss:item><rss:item rdf:about="http://codeinthesun.com/home/2009/11/26/a-shade-of-gray.html"><rss:title>A shade of gray</rss:title><rss:link>http://codeinthesun.com/home/2009/11/26/a-shade-of-gray.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2009-11-26T18:28:04Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Depending on your focus and expertise, the world of the web starts somewhere.</p>
<p><strong>Front End</strong></p>
<p>For Front End developers, the most important part of building a web site is building a great user interface and user experience. The most important parts of the architecture of the code exist around handling events and user gestures. Defining the different states of the experience and defining transitions between those state. What is less important is the data that populates the UI. Flash applications rarely even involved in managing data. Data comes from a database, which is abstracted through an API, which is then abstracted again as Value Objects that the application uses.</p>
<p><strong>Databases</strong></p>
<p><strong><span style="font-weight: normal;">For Database Admins, the foundation of the web is the raw data and a web page is just a visual representation of that data. User Interface is important in that it is key to expressing the data in a way that is clear and accessible but ultimately the data itself will determine the value of the site. Concerns focus around data integrity and speed of access, how different types of data may relate to each other and be queried to provide new sets of data. To a DBA, the front end is almost entirely abstracted by a Business tier that talks tells the database that the user wants to see and translates that data into a format that user can understand.</span></strong></p>
<p><strong>Server Software ( Business Tier )</strong></p>
<p><strong><span style="font-weight: normal;">Appropriately named Middle-Ware, server software is essentially a medium through which data and presentation communicate. Whether it be Ruby, Java, or PHP, an engineer is not too concerned with either the data or the presentation. Instead they concentrate on getting data, parsing it, and sending it to the user as fast and efficiently as possible. And going the other way around, acting on the users behalf in translating state transition at the presentation level into an intelligent data query. Often this also involves logical decisions about navigation, validation of user submitted data, processing and conversion of user data ( such as images ), and probably decisions about where data is saved ( assuming it is not saved directly to the database ).</span></strong></p>
<p><strong>Focus</strong></p>
<p>All of these perspectives are myopic. All three interests must be represented in order to create a successful web app but no one interest should be more important than another. Take Google for example.</p>
<p>Google is a very successful company but they are primarily focused on Databases and Business Tier logic. They have notoriously bad Front End design. I would argue that the only truly successful part of Google is their search engine which gained popularity in large part because of the simple and easy to understand front end. The plain white page with a google logo and a search box was as important to the success of the company as all of the technology behind it.</p>
<p>i.am</p>]]></content:encoded></rss:item><rss:item rdf:about="http://codeinthesun.com/home/2009/11/22/how-to-reduce-sinusoidal-depleneration.html"><rss:title>How to Reduce Sinusoidal Depleneration</rss:title><rss:link>http://codeinthesun.com/home/2009/11/22/how-to-reduce-sinusoidal-depleneration.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2009-11-22T18:27:49Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Last week I told my boss that there was a problem with the unilateral phase detractors which is why I couldn't meet our deadline... obviously.</p>
<p>&nbsp;</p>
<p><object width="425" height="344">
<param name="movie" value="http://www.youtube.com/v/MXW0bx_Ooq4&amp;hl=en_US&amp;fs=1&amp;" />
<param name="allowFullScreen" value="true" />
<param name="allowscriptaccess" value="always" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/MXW0bx_Ooq4&amp;hl=en_US&amp;fs=1&amp;" allowfullscreen="true" allowscriptaccess="always"></embed>
</object></p>
<p>&nbsp;</p>
<p>And then he asked the one question he's best at asking. "why?"</p>
<p>KHAAAAAN!</p>
<p>Complexity is the root of all Evil. And Evil is the root of all staying late at work. So I figure the only way to reduce Evil is to reduce work and complexity and work.</p>
<p>i.am</p>]]></content:encoded></rss:item><rss:item rdf:about="http://codeinthesun.com/home/2009/11/22/first-post.html"><rss:title>First Post!</rss:title><rss:link>http://codeinthesun.com/home/2009/11/22/first-post.html</rss:link><dc:creator>i.am.i.end</dc:creator><dc:date>2009-11-22T18:02:06Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>haha!</p>
<p>So.... I guess i just sit here and wait for comments now?</p>]]></content:encoded></rss:item></rdf:RDF>