<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:afreeman</id>
  <title>Andrei's Work Journal</title>
  <subtitle>Very professional, huh</subtitle>
  <author>
    <name>Andrei Freeman</name>
  </author>
  <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/"/>
  <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom"/>
  <updated>2007-10-03T17:10:00Z</updated>
  <lj:journal username="afreeman" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://afreeman.livejournal.com/data/atom" title="Andrei's Work Journal"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:afreeman:2947</id>
    <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/2947.html"/>
    <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom/?itemid=2947"/>
    <title>What am I working on</title>
    <published>2007-10-03T17:10:00Z</published>
    <updated>2007-10-03T17:10:00Z</updated>
    <category term="blog"/>
    <category term="mac"/>
    <category term="work"/>
    <content type="html">A regular update. My life is utterly consumed with working on the upcoming release of &lt;a href="http://www.macoffice2008.com/"&gt;Microsoft Office 2008 for Mac&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The team was asked recently to reflect on the "Think Different" campaign that ran 10 years ago at the "Rebirth" of Apple. At that time I was working in Education. I was one of three Mac folk on a team of 11. I was the lone Mac developer. I was continually derided by my team members for clinging to a 'dying' OS.&lt;br /&gt;&lt;br /&gt;The Think Different commercial was very special to me. So, I was pleased when I got the chance to comment on it.&lt;br /&gt;&lt;br /&gt;Over at &lt;a href="http://blogs.msdn.com/macmojo"&gt;Mac Mojo&lt;/a&gt; (the Office for Mac Team Blog) is &lt;a href="http://blogs.msdn.com/macmojo/archive/2007/09/28/here-s-to-the-crazy-ones.aspx"&gt;the posting made from selected comments from across the team&lt;/a&gt; about the campaign and the different Geniuses chosen for the poster campaign. See if you can tell if one of my comments made the cut and if so, bonus points if you can figure out which one came from me.&lt;br /&gt;&lt;br /&gt;The comments on the MacMojo blog posting are comprised mostly of the FUD developers learn to ignore from people who thing that if we stop coding for 30 seconds we're intentionally depriving them of features and fixes. A few nice comments. &lt;br /&gt;&lt;br /&gt;But in the meantime... back to coding. :)</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:afreeman:2443</id>
    <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/2443.html"/>
    <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom/?itemid=2443"/>
    <title>Something's coming... something good</title>
    <published>2006-03-23T17:26:08Z</published>
    <updated>2006-03-23T17:26:08Z</updated>
    <category term="trademark"/>
    <category term="certificates"/>
    <category term="legal"/>
    <category term="work"/>
    <content type="html">Tuesday I posted that we are ramping up at Apolo Productions. I also said that a lot of other good stuff is beginning to happen.&lt;br /&gt;&lt;br /&gt;I just got off the phone with a rep I've been interacting with for the past 13 months on a project for the company. As of Tuesday evening this project finally came to fruition.&lt;br /&gt;&lt;br /&gt;The project was the filing for trademark. This was an important process for Apolo Productions.&lt;br /&gt;&lt;br /&gt;I have been using the name "Apolo Productions" for my freelance work since my college days. I have used it for Theatrical productions, software contracts, computer consultation, and web services. This means the term can be found since about 1988.&lt;br /&gt;&lt;br /&gt;In February of 2005 I filed for US Trademark on Apolo Productions.&lt;br /&gt;&lt;br /&gt;Now the process isn't difficult... but it is time consuming and does cost money. About the same amount as it does to change a legal name.&lt;br /&gt;&lt;br /&gt;Interestingly along the way I hit a snag that in fact became far more fortuitous that I'd have imagined.&lt;br /&gt;&lt;br /&gt;The word "Productions" can not be trademarked. I had to file that I was not trying to trademark "Productions" I can only trademark "Apolo" (Which as it only has one "L" is not encroaching on the fair use of "Apollo"&lt;br /&gt;&lt;br /&gt;My statement of 'invention' of that name was sufficiently "Without prior art and unique" that I own the trademark on Apolo.&lt;br /&gt;&lt;br /&gt;There is a lot of work going on now in the "Apolo Productions" offices to tighten up the planned work we've already started doing and opening the doors to paying customers for services.&lt;br /&gt;&lt;br /&gt;Personally, it's really quite exciting.&lt;br /&gt;&lt;br /&gt;So... Great news today for:&lt;br /&gt;&lt;br /&gt;&lt;font size="+1"&gt;Apolo Productions&amp;trade;&lt;/font&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:afreeman:2067</id>
    <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/2067.html"/>
    <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom/?itemid=2067"/>
    <title>Status update</title>
    <published>2006-03-21T08:16:39Z</published>
    <updated>2007-07-30T19:09:41Z</updated>
    <category term="mason"/>
    <category term="mod_perl"/>
    <category term="apache"/>
    <content type="html">As we continue to work on our software research at Apolo Productions there is a lot of other good stuff happening.&lt;br /&gt;&lt;br /&gt;Several people are considering moving to Apolo for web hosting services. We are offering discounts to brethren and bodies of the OTO off our regular fees.&lt;br /&gt;&lt;br /&gt;I spent about 5 hours today installing and making &lt;a href="http://www.masonhq.com/"&gt;Mason&lt;/a&gt; work on our OSX Server. This was quite a process and I hadve to admit it wouldn't have happened without some wonderful support from an old colleague.&lt;br /&gt;&lt;br /&gt;Apolo Productions is aiming to offer web hosting services that are service and support oriented. This means we get the technologies you want and need working and we get out of your way.&lt;br /&gt;&lt;br /&gt;More details forthcoming</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:afreeman:1798</id>
    <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/1798.html"/>
    <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom/?itemid=1798"/>
    <title>technorati ping</title>
    <published>2005-09-14T19:53:32Z</published>
    <updated>2005-09-14T19:53:32Z</updated>
    <content type="html">&lt;a href="http://www.technorati.com/claim/wf4zh3fyf" rel="me"&gt;Technorati Profile&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:afreeman:1706</id>
    <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/1706.html"/>
    <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom/?itemid=1706"/>
    <title>What have I been up to...</title>
    <published>2005-02-07T22:28:10Z</published>
    <updated>2007-07-30T19:10:28Z</updated>
    <content type="html">This post is cross posted both here and on &lt;span class='ljuser' lj:user='lordandrei' style='white-space: nowrap;'&gt;&lt;a href='http://lordandrei.livejournal.com/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://lordandrei.livejournal.com/'&gt;&lt;b&gt;lordandrei&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I've been overhauling my business website. This has been pretty much the goal of the past 3 months.&lt;br /&gt;&lt;br /&gt;The main web site is located at &lt;a href="http://www.apolo.net"&gt;http://www.apolo.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This site is an exploration into my learning PHP and mySQL. The entire main Apolo Productions site is now in PHP/mySQL and as a result has very little code. The entire hierarchy is also being maintained via CVS and as a result can report updates as they are made.&lt;br /&gt;&lt;br /&gt;One recent update that makes me very happy is the completely new &lt;a href="http://ancestry.apolo.net"&gt;Family History&lt;/a&gt; site that we're building.  Since the family history for my family goes, "Go back 5 generations, get to Ellis Island, find nothing, then go rent &lt;i&gt;Fiddler on the Roof&lt;/i&gt;"; I am living my genealogical dream vicariously through &lt;span class='ljuser' lj:user='shimmeringjemmy' style='white-space: nowrap;'&gt;&lt;a href='http://shimmeringjemmy.livejournal.com/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://shimmeringjemmy.livejournal.com/'&gt;&lt;b&gt;shimmeringjemmy&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; who we've been able to research back to the 1400s and possibly even the 600s.&lt;br /&gt;&lt;br /&gt;The ancestry site requires a log in to look at the data. You can either make your own or use the basic access offered by the user/pw combo of  ancestry/ancestry.&lt;br /&gt;&lt;br /&gt;Another major project which is finally reaching a stable point is the evolution of our internal and external networking. As I am actually hoping to offer internet hosting solutions to the public (discounted really well for members of the OTO), I really have to up the quality.&lt;br /&gt;&lt;br /&gt;I've swapped ISPs and completely redone the internal networking architecture. I've linked to a &lt;a href="http://www.apolo.net/images/PublicNetwork.jpg"&gt;relatively nifty image&lt;/a&gt; that I've made of the network topology. You may notice that some areas have been blacked out. That's primarily a really simple security mechanism to try to reduce hacking.&lt;br /&gt;&lt;br /&gt;In other news, I've begun the process to officially register the name &lt;i&gt;Apolo Productions&lt;/i&gt; as a trade mark. This is necessary as I may also have to deal legally with the people who I feel are cyber-squatting on apolo dot com. (I'd ask people NOT hit that domain. The owner has a web hit counter there. As a result, people looking in on the site will only encourage him to believe that the site has value)&lt;br /&gt;&lt;br /&gt;There has been much more on a personal level. And I'll go into those details in my personal journal.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:afreeman:1128</id>
    <link rel="alternate" type="text/html" href="http://afreeman.livejournal.com/1128.html"/>
    <link rel="self" type="text/xml" href="http://afreeman.livejournal.com/data/atom/?itemid=1128"/>
    <title>A whole new world</title>
    <published>2004-09-23T06:55:33Z</published>
    <updated>2004-09-23T07:04:07Z</updated>
    <content type="html">I should of course preface this with the following statement:&lt;br /&gt;&lt;br /&gt;All comments in this journal are mine. They do not reflect the opinions, beliefs, support, endorsement, corroboration, attitude, or anything else someone can think of belonging to my bosses, managers, co-workers, company, fellow-code junkies, etc. These are my words and my world.&lt;br /&gt;&lt;br /&gt;After nine long months of research, pain and anguish... I've finally gotten a major piece of corporate released software. (I consider "Launcher" to be a &lt;i&gt;minor&lt;/i&gt; piece of corporate released software)&lt;br /&gt;&lt;br /&gt;Today Earthlink released the newest version of its Total Access software for the Mac. Version 5.1. This is some really impressive stuff. For dialup folks it has the Accelerator technology which caches and reduces detail on graphics so pages load faster. For all users we also have an all new Scamblocker. It actually watches mail and the like in the event some spam tries to route you to one of those Fisher sites that tries to make you give up personal information and passwords.&lt;br /&gt;&lt;br /&gt;And oh, yes. NewsAccess.&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;To give you a bit of history... I'd been working on iJournal. This was a Mac LJ client. It was an open source project under the guidance of &lt;span class='ljuser' lj:user='cryo' style='white-space: nowrap;'&gt;&lt;a href='http://cryo.livejournal.com/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://cryo.livejournal.com/'&gt;&lt;b&gt;cryo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;. At the time I was developing disk utility software for Symantec.. so this was safe moonlighting. Even got an okay from the boss. iJournal hit a lull and some of the engineers on the project went to other things. I wound up writing an app launcher for Norton Utilities &amp; Norton System Works. This was one of those apps that was about 5% code and 95% UI.&lt;br /&gt;&lt;br /&gt;I'd shied away from UI because I didn't have a lot of experience in it. With Launcher I learned all I ever need to know about UI. And all I needed to know was, "Stay away from UI." It's not that UI is technically difficult (well, it is... I'd just learn that later), it is, however, organizationally difficult. While not everyone on the team might know the difference between a merge sort and a bubble sort... everyone AND I MEAN EVERYONE, thinks they know where a button should be and what it should do.&lt;br /&gt;&lt;br /&gt;The UI for launcher would go thru 37 revisions. And have commentary from at least 45 people, some of which weren't even on the team involved with the product. It was a frustrating, humbling, and educational experience. While working on Launcher, I'd become friends with one of the other engineers on iJournal. &lt;span class='ljuser' lj:user='fraserspeirs' style='white-space: nowrap;'&gt;&lt;a href='http://fraserspeirs.livejournal.com/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/userinfo.gif' alt='[info]' width='17' height='17' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://fraserspeirs.livejournal.com/'&gt;&lt;b&gt;fraserspeirs&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Fraser has decided to write his own LJ client from scratch. This time he was doing it solo. I wished I could help, because there was so much I wanted to add to the LJ journalling experience. Initially, I did some bug reporting and feature suggesting. When the project was looking for financial support I offered some. Since then, I have done debugging and optimization profiling on &lt;span class='ljuser' lj:user='xjournal' style='white-space: nowrap;'&gt;&lt;a href='http://community.livejournal.com/xjournal/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/community.gif' alt='[info]' width='16' height='16' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://community.livejournal.com/xjournal/'&gt;&lt;b&gt;xjournal&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;. I think it's become the best Mac client for LJ without a doubt. Sadly however, during this time my tenure at SYMC would come to a quick and abrupt halt.&lt;br /&gt;&lt;br /&gt;I found myself after a few months off at Earthlink. Not quite as BIG as SYMC, but a nice group of folk. I came in late on the cycle and discovered the joys of trying learn a very strange framework to force in some new functionality late in the cycle. I'd been playing with NetNewsWire and found that there were several features that I wanted in its 1.0 release that simply weren't there. I couldn't retrieve any livejournal posts that were filtered. I didn't see several of the tags I wanted to. And worst, if the feed was behind a login screen, there was no way to get to it.&lt;br /&gt;&lt;br /&gt;I started to (in the similar manner of Fraser) spin my own. &lt;br /&gt;&lt;br /&gt;I'd never written anything this complex. I had dozens upon dozens of unfinished code ideas from over the years. My little newsAgg was probably gonna be another one. After setting up a slew of data structures, I pinned them to a rough UI. Something that would let me grab the RSS files. Something that would batter it to parse the data. Something that would let me show it. One day in January a miracle happened. One of the senior P.M.s was raving about this new RSS technology. I was working on my early draft at that point. I showed him all the things I thought we could do with RSS. It turned out, Earthlink's server team had hacked together RSS feeds of our news streams. I commented about all the stuff that I hadn't seen other RSS apps do that I thought would be beneficial. He put a guy on the PC team to work on a news ticker. He asked if I could also put in a news ticker to my RSS work.&lt;br /&gt;&lt;br /&gt;My work was blessed by management. Now I had to finish it. Another coworker did a mock up ticker with hard coded data. Getting a live ticker with user mutable data would turn out to be far more daunting than anything I'd ever done. For those of you who know the Cocoa Frameworks, there just isn't a lot of support on the non-existent NSOroborosScroller. My knowledge of the cocoa frameworks definitely went up a few sizes and I learned things about the NSView hierarchy I never wanted to know in the first place. (I still think I've got my blitting wrong to this day :)&lt;br /&gt;&lt;br /&gt;This would be my first excursion into threading. This would allow the app to fetch multiple threads at once while only slowing down in extreme cases. I learned about the WebKit, which allows you to use the power of HTML rendering in a window. For the first time in about 10 years I found myself playing architect, lead developer, and managing bug reports. I got to the point where I was assigning bugs in the new app to the new programmer on the team so that we could split the work.&lt;br /&gt;&lt;br /&gt;The adventure was not without some scary heartaches. A memory leak that took nearly 3 months to track down and kill got to the point that I was actually having nightmares. The reality of threaded apps is... don't write them. The more you thread, the less you will be able to find bugs. And XML APIs... Don't get me started. At least they will be supported in ... next year's OS... err. maybe. In the mean time I face the same thing every other corporate programmer has to face...&lt;br /&gt;&lt;br /&gt;Oh, there is a crasher in the OS API? Find a workaround!&lt;br /&gt;Whadya mean that function only works in this year's OS... You need to support the OS from 2 years ago!&lt;br /&gt;And oh yes... Nah, trust this guy... he knows Macs. "Dude, okay... it needs a WinWizard!"&lt;br /&gt;&lt;br /&gt;But that's part of the bargain.&lt;br /&gt;&lt;br /&gt;So... Do we have all the features of the latest and greatest? Nah.&lt;br /&gt;Do we have a copule of really cool features that no one else has? Sure.&lt;br /&gt;Do we have easter eggs? Of course not. But maybe a few undocumented shortcuts.&lt;br /&gt;Are we done? Nah, we're just getting started.&lt;br /&gt;&lt;br /&gt;It's my first big one. I'm proud of it.&lt;br /&gt;&lt;br /&gt;Yay team. Everyone did wonders to make this happen.&lt;br /&gt;Thanks to MF, KK, HH, and BV on the dev team. Thanks to WH who played about 3 different managerial hats, J &amp; R in docs, AS for some killer graphics and an awesome icon, Everybody in web docs. In QE: DK, TB, JN, MB and without a doubt AM who was probably the most tencious tester I've ever had. (Sorry Margarita and Chotima). CP for hiring me and giving me this chance to work on an awesome piece of software. But most importantly I have two special thanks. One to TH on the dev team. He was a recent hire who came on, ramped up very quickly, and killed off some nasty bugs. TH was an absolute pleasure to work with on this cycle and I can't wait to see what we do for the next release.&lt;br /&gt;&lt;br /&gt;But the star of my team didn't write one line of code. It's the woman I fell in love with. The woman I married during the cycle. The woman who agreed to postpone our honeymoon so that I could build this labour of love. The woman who put up with multiple late nights at the office and even more than one all-nighter. Heather is, was, and will be a pillar of strength in my life. I &lt;i&gt;could&lt;/i&gt; have done it without her. But having her there made it far more sweeter to endure and richer to share.&lt;br /&gt;&lt;br /&gt;I hope you like it as much as I do...&lt;br /&gt;&lt;br /&gt;-Andrei&lt;br /&gt;&lt;br /&gt;So:&lt;br /&gt;Configurable News ticker&lt;br /&gt;Filtered RSS feeds&lt;br /&gt;LJ shortcuts&lt;br /&gt;Authenticated feeds&lt;br /&gt;Bad feed verbose errors&lt;br /&gt;&lt;br /&gt;Not bad for a first run ;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In case you want more info:&lt;br /&gt;&lt;br /&gt;You can check out the pages at Earthlink at:&lt;br /&gt;&lt;a href="http://www.earthlink.net/home/software/mac/newsaccess/"&gt;http://www.earthlink.net/home/software/mac/newsaccess/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've also put up &lt;span class='ljuser' lj:user='newsaccess' style='white-space: nowrap;'&gt;&lt;a href='http://community.livejournal.com/newsaccess/profile'&gt;&lt;img src='http://p-stat.livejournal.com/img/community.gif' alt='[info]' width='16' height='16' style='vertical-align: bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='http://community.livejournal.com/newsaccess/'&gt;&lt;b&gt;newsaccess&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This lj community is by NO means official. It is not official policy or the like. Hell, it's not even tech support. But just a general stompoing place for people. It's software. I'd be crazy not to believe somebody will want to stomp a bit on it.&lt;br /&gt;&lt;br /&gt;Maybe I'll even talk about some of those undocumented shortcuts.</content>
  </entry>
</feed>
