In Mac OS 10.7 (Lion) and 10.8 (Mountain Lion), it’s not currently possible to export mailboxes from Mail.app to something that Microsoft Outlook 2011 can import directly. After a bit of research, and plenty of forum messages seeing the frustration of folks, including Microsoft’s reluctance to fix Outlook 2011 for Mac (instead they decided to just disable the feature, see in the release note “Import from Apple Mail is disabled in Outlook on Mac OS X 10.7 Lion”), I found the issue was due to the FSTypeCode not being set by Mail.app, which is actually really easy to fix.…
Convert Maibox from Mail.app to Microsoft Outlook 2011 in Lion
November 9, 2012 – 7:45 am
Failing to Scale Out Push Web Services
February 23, 2012 – 5:28 am
Problem: on the web, enable a large number of message producers send a very large number of messages to a much larger number of message consumers. Example: allow 100,000 publishers send a total of 1 million messages per second to 100 million concurrently connected consumers.
We are dealing with the problem of connection channels, an abstraction that allows a producer distribute the message to many connected consumers. Our challenge is to design a distributed channel delivery mechanism that can scale out to millions of connected consumers.…
The NodeJS Innovation Advantage
January 28, 2012 – 9:40 pm
Thesis: “when building large scale distributed systems, high performance functional programming languages provide the quickest turnaround from idea to concept; however such advantage disappears as we move from concept to production, and the overall time from idea to production across all programming languages is of the same order of magnitude”.
I posted this diagram, without justification, yesterday evening, in an attempt to gauge the reactions of the community, in twitter. Thank you to all of you that commented. With the experiment done, let me now provide my thesis and hopefully address most of the feedback so far.…
A Home Backup Strategy
December 9, 2011 – 6:07 am
For years I’ve been continuously fighting with backups. I have not been particularly good or consistent at it. We’ve been okay with Time Machine and Carbon Copy Cloner, but the recent addition of a digital SLR to our gadget collection has meant running out of space on our shared home drive.
Historically I’d been using a WD My Book 2×1 TB RAID1 array connected to an Apple Airport Extreme and shared via AirDisk (afp). We had Time Machine backup all the computers in the house in the AirDisk.…
The Praxis of Event Loops
October 15, 2011 – 3:27 pm
On a theoretical world, given the ability for a processor to run an infinite amount of threads, we could prove the following statements (no attribution purposely given):
- If you do more CPU than I/O, use threads.
- If you do more I/O than CPU, use more threads.
which would allow us to conclude with the following corollary:
at full utilization, threads and events have the same theoretical throughput.
Such argument ignores praxis — it is a purely theoretical debate disconnected from the reality of scaling services –.…
Markdown, An Open Document Workflow
October 15, 2011 – 2:27 pm
I’ve been using Markdown since 2006, taking all my notes at work using a simple text editor and using the Markdown text markup format. I also use Markdown for writing down thoughts and posting to this blog. I rarely, if ever, use Word or even TeX/LaTeX. I treat markdown as my source format and I generate all my target formats using multimarkdown: PDF, HTML, RTF, etc.
I am happy with this process. I use a standard editor I find in any operating system I happen to work with.…
Railroad Diagrams from EBNF
October 10, 2011 – 9:04 pm
I am playing with a new query language. I am defining the grammar as EBNF, but I want to show railroad diagrams for those readers that are more graphical and less familiar with BNF. I’ve found limited support for generating syntax diagrams from EBNF. I’ve found a few tools, some working better than others:
- Ebnf2ps (Haskell). This is the only tool I have not been able to get to work. I seem to be missing AFM fonts in my TeX installation and I am not sure I want to spend time figuring out how to generate the AFM files. …
Ahead with Node.JS and Google V8
September 11, 2011 – 3:34 pm
It has been 10 months since I posted about Google V8. But somebody re-started a thread again on Hacker News about my old blog post. So now I am compelled to briefly say where we are at.
We have continued and extended our investment in Node.JS. I can tell you that what the teams are doing is transformative and pure awesomeness. Unfortunately this is as much as I can tell you right now, but really soon you’ll start hearing what we’ve done.…
Answering Jason on V8 governance and impact to NodeJS
February 6, 2011 – 5:30 am
Update (2011/9/11): this post is picking up again 8 months later, I’ve written an update as of where we stand.
Jason Hoffman (Chief Scientist, Founder at Joyent) has posted some good questions to me, based on my original nodejs and V8 post. Let me summarise Jason’s questions and comments into three key messages:
It’s Joyent’s responsibility that NodeJS runs well period. We’re not afraid of a language VM. [...] actual node.js committers (who all work at Joyent) know quite a bit and have pretty good relations with the V8 team.
…
NodeJS: To V8 or not to V8
February 6, 2011 – 12:05 am
Update: Jason Hoffman (Chief Scientist, Founder of Joyent) has written a very good response to this post. Obviously I owe him some responses, which is on a separate post.
If you have not watched Douglas Crockford’s video lecture on server-side Javascript, I recommend you do that first before reading further into this post.
I have been saying for a while that server-side Javascript matters. We, at Yahoo!, see a bright future in server-side Javascript and are making a big investment in it.…
