Archive: April 2, 2015
Archive: March 23, 2014
Archive: April 2, 2013
Archive: April 1, 2012
Hi y'all! Well I haven't posted here for a while - a long while - my last post was in January, right after I'd moved physically. The truth is that without meaning to I've moved digitally too ... to Facebook.
Over the past six months I've become a daily Facebook poster, and while I don't really do my "linkblog" thing there (yet!), the best way to keep up with me is to subscribe to me there. Everything I post to Facebook is public, and while it isn't necessarily the most interesting stuff on the 'net, you're welcome to read it :)
The pic above right is one of my favorite moments from one of my favorite movies, the Social Network. Right after they've "gone live" they email a bunch of friends to tell them about it. And Mark Zuckerberg's character says "the question is, who are *they* going to tell?"
The background truth is that I'll go back to blogging "someday", I do miss it. But I've been super busy at Aperio with a massively interesting project, and involved in two startup companies as a consultant, and have done a little vacationing here and there, and have been cycling a lot, and ... blogging has fallen off my daily todo list. But please stay tuned and please follow me on Facebook in the meantime :)
Archive: April 2, 2011
April came in like a lion for me; was in Boston where I enjoyed an April Fools storm. Came back last night and here I am, in warm and sunny Los Angeles, blogging away... Yay.
- Flew back on Virgin America, on a brand new plane. First commercial flight. The pilots celebrated by gunning it down the runway, it fairly jumped off the ground. That was fun. Plane has airbags, iPod holders, and nicer headrests, all enhancing the already enhanced Virgin America experience.
- While in Boston rented a Ford Fusion. Not a bad little car, nice looking, comfortable, drove well. I am so rooting for Ford, unlike GM they are NOT Atlas Shrugged motors.
- The GPS in my Palm Pre is infinitely better than any in-car unit, and 100% competitive with any handheld unit. Even down to having realtime traffic. Love it.
- My "new" Kindle 1 arrived. Perfect condition, I love it. eBay sellers' customer service is awesome. (Thanks!)
- While I was out, got a giant shipment of light bulbs from bulbs.com, and some batteries from batteries.com. Honestly how did we do this before the Internet?
- Also while I was out, received new memory for my laptop (from memory.com), am now running 8GB. Perfect for several concurrent VMs. It was, like, $200. Amazing.
Okay, enough of that, how about some of this:
Here we have the coolest tidal bore on the planet, at Bruno Santos, Indonesia. Yes you must watch this, 20 perfect sets rolling in for a mile. Looks computer generated it is so perfect. Wow.
Huh, aeronautical engineer Burt Rutan is retiring. What a legend. Wonder if Scaled Composites is going to make it without him?
So the final tally is in for my for a teen: iPad vs Macbook survey; Macbook won in a landslide, 80% to 12%. So be it. Still most of you voters are already computer users, while iPads are the computer for the rest of us :)
Apropos: How Apple made the world safe for the future of keyboards. I don't know; for serious typing there's nothing like an actual keyboard. In fact the old metal clicky ones are the best!
Check out Google Page Speed Online. Critical Section gets an 82 / 100. So be it.
Way too funny: the Macalope's Fools of the Year. I especially like the iPad success-deniers. At this point they have been overtaken by history.
Scott "Dilbert" Adams: The importance of new ideas (even bad ones). One of the reasons I like blogging :)
Excellent: It's no joke, IPOs are back. Just in time!
True colors: bathing mobile in an entirely new light. We'll see about that; I think this is advanced kool-aid drinking. There doesn't seem to be a there there.
Speaking of missing theres, Dave Winer has remerged his linkblog with his realblog, ending an experiment with Twitter. I find the number of ex-Twitter users among my friends is growing.
Well of course: Google plans facial recognition app that can pull up personal data. You know this will happen (we've talked about it); the only question is how soon. And of course when can we have it built into our shades?
Amazingly and surprisingly, I realized I have no idea who is in the Final Four, and was only dimly aware it takes place this weekend. Wow and in years past I was all over this. No #1 seeds! No #2s either, one #3 and #4! Wow. UConn, Kentucky, Butler, and Virginia Commonwealth (!) ... I guess I'm going to root for Kentucky. Just because.
BTW: ESPN's website sucks. Too much glizty crap and auto-video. Almost impossible to find the bracket!
The real big sporting event is tomorrow's Tour of Flanders. Can't wait! Onward, have a nice weekend...
Archive: April 2, 2010
Well I made it! A great flight via Amsterdam to Brussels - thank you, KLM - and a little drive in a micro-Peugeot diesel, and here I am, in Ghent, Flanders, ready to ride the Tour of Flanders (aka Ronde de Vlaanderen) tomorrow. I just ate the world's biggest pasta dinner and have been drinking as much as I can to prepare. Sleep will be good too.
Most gratifyingly I have been treated like royalty for having come all the way out here from California to compete. There are over 3,000 entrants! Whew. And it is raining, and windy – perfect crappy Belgian weather for this race. I cannot wait – and I won’t have to long, ‘cause the start is at 0600 tomorrow. It’s 260km (about 150 miles) with 15 short steep hills and 8 sections of nasty cobbles. I think it will take about 10 hours, we’ll see how many of those 3,000 Europeans I can hang with :)
At right is a picture of me checking in for the ride, with my rented bike. It looks pretty cool, sturdier than a standard racing bike, better able to take the cobbles I guess. I brought my cleats and pedals and they popped right on. Well that's the news, please keep fXf for me and stay tuned for a full report!
Archive: April 2, 2009
don't know about creepo but total fake is looking dead on
note the name of the movie
I love it
Greetings, blog readers! And there are many of you today, as I see that once more StumbleUpon are featuring several of my posts. Do not be frightened by what happens here, nobody gets badly hurt. So today I had a nice quiet day of work: several presentations, a few bugs, some design reviews, and a bit of coding; the usual mix. And then escaped for a nice ride through Hidden Valley, and then attended my homeowner's association board's meeting (I am an elected member) and spent several hours discussing unleashed dogs in the park, and whether a neighbor should be allowed to park their RV in their back yard. Oh, and then blogged... so, onward, let's make a filter pass, shall we?
TheScientist asks an excellent question: Why Sleep? The two main theories: 1) crystallization of sensory information into memory, and 2) replenishment of resources. I have my own weird theory, unsupported by evidence, that the mind needs down time for prospectively trying out "what if" scenarios.
Isn't is weird how yawning is contagious? I keep looking at that little baby, and I keep yawning. Yawn...
Farewell "mark to market", we hardly knew ya: Did DE-regulation Just Turn Around the U.S. Economy? My friend Peter has been saying this was the key to an economic turnaround, it will be interesting to see if he's right... (he did call this whole "toxic asset" thing dead on...)
Looks like the Palm Pre is going to be able to emulate classic Palm apps... that is really cool. It not only shows market smarts but technical proficiency. I'm sure just about all the functionality available in classic apps will be rewritten natively for the Pre given time, but in the meantime people like me now have no barrier to upgrading. I want my Pre!
Check out this remarkable blog from Louis C.K. who is on a middle East USO trip. Way cool. [ via Althouse ]
Bruce Friedman wonders do hospitals really want interoperable e-health records? And the answer is no, they don't, they're competitors. Interoperability between vendors delivers value, between hospitals and doctors, not so much...
This is too funny: plush uterus recall notice.
[ via The 1X Objective ]
Apparently Google is about to buy Twitter. So be it. I'm sure they'll turn the Twitterverse into a gigantic conversation to be searched and indexed, and we will learn ... nothing from it.
Robert Scoble thinks this is the worst thing for Twitter. "Remember, Google is the company that bought Jaiku and then did nothing with it. It’s the company that bought Dodgeball (a company that had a service very similar to Twitter that was out before Twitter). And did nothing with it (the founders of that company also wrote a “we’re leaving” letter to Google.)" Yeah, not to mention, this is the company that bought Blogger and did nothing with it.
ZooBorn of the day: a little Collared Lemur. Looks very cozy in there, doesn't it?
Archive: April 1, 2008
<rant soapbox=”true” optional=”yes” >
Okay, I’m going to date myself here. I’m 49 years old, and I started programming in Junior High, when I was 13, so my story begins 36 years ago. The dawn of time, metaphorically speaking.
Back then, I didn’t have to walk to school barefoot in the snow, uphill both ways, but I did have to learn programming by submitting batch decks of cards. Yes indeed. My school had a deal with Northridge University whereby students could mail a deck in, they would run it, and then mail back the results. I’m talking about snail mail, postman knocks twice and delivers once a day kind of mail. Oh, and of course I didn’t have a card punch, so I hand bubbled the cards. Yes, I do still remember Hollerith codes, thanks for asking.
Okay, so there I was, writing FORTRAN programs by hand-punching cards, and then waiting a week while the deck was mailed to Northridge, and I’d get the deck back with a pile of greenbar. Now in this environment, a typo was expensive. We’re talking a week wasted expensive. Furthermore trivial bugs were not inconvenient, they were infuriating. There was a big payoff in being careful. Every program was laboriously written out (graph paper, baby) and then carefully desk checked, and then hand-punched, and then run. Which could bring me to my point but it won’t yet.
Later I advanced to driving over to Northridge and using their card punch machines, but it still took hours to run a deck before you got your pile of greenbar, and it was still well worth carefully desk checking before submitting. Aside from the lost time, resubmitting the same deck over and over was embarrassing.
Later I advanced to using a PDP 8, with a 110 baud teletype. (If you want to know why I type so “hard”, it’s because I learned to type on a TTY where the keys had an inch of travel and required about 10lbs of force.) I used a line editor and the TTY spit out hardcopy on greenbar. Any kind of problem and you were wasting serious amounts of paper and time, so it was definitely worth desk checking before typing in a program.
Later I advanced to storing my programs on paper tape. Yes, I do remember Baudot codes, thanks for asking. You didn’t really want a typo in a paper tape, because editing was a bit lame. You copied the tape to another tape up to the spot of the change, made the change, and then copied the rest of the tape. Really. Any bugs were not only annoying, they wasted frightful amounts of time, not to mention tape. So yeah, desk checking was definitely the thing to do.
Later I advanced to using a “glass TTY”, a green and black 24x80 CRT. Man, what an advance! I could actually edit programs interactively – a line at a time – without cards, printouts, or paper tape. Still, it took time to enter programs, and more time to fix them, and it wasn’t like there were debuggers or anything; this was the original “printf” debugging environment. So it was still very beneficial to desk check code before running it. As in, print it out, read it, look at it, analyze it, convince yourself it was really going to work, and then type it in.
Later I advanced to using full screen text editors – in fact, I wrote my own at first – and man was that nice. You could actually read the program on screen instead of working from a printout. Of course, you could only see 24 lines at a time, so it definitely encouraged tight code and small modules. (Want to know why I put comments at the end of lines instead of on separate lines – now you know :) And it was still a bit tricky to fix stuff, and still hard to debug – lots of paper later, you finally found the error on line 781, or line 78,100 - and so desk checking was still the thing to do.
Okay, okay, you get it, I’m a dinosaur, I’ll get to the point.
So today I have a huge LCD monitor with an amazing visual interactive tool like Visual Studio where I can have hundreds of modules all up at the same time in a color-coded full-screen interactive environment. I can compile in seconds to find typos, and debug interactively to find logic errors. I never ever print anything out anymore. (In fact when I do have paper, I scan it in.) To write code I just look at my screen and start typing, and to fix code, I just look at my screen some more and type some more. So now, finally, I‘m done with desk checking, right?
I desk check everything. Thoroughly.
And this, to me, is a major league black art which is lost to all those who didn’t have to hand-punch cards and wait a week for their deck to run. It is a lost art, but an essential art, because all the tools which make entering code and editing code and compiling code and running code faster don’t make your code better.
Desk checking means carefully reviewing everything you’ve coded, running the code in your head before you run the code on your computer. It means pretending you’re the compiler, and pretending you’re the CPU. It means thinking about what is really going to happen, what are the boundary conditions, what are the possible error conditions. What are the real world data going to look like. It means you spend an extra five minutes or five hours so you don’t have bugs later. And it is really important.
You cannot possibly find all the problems in a program just by running it. For one thing, there are problems where the code is wrong, but it still produces the correct output. There are problems where the code is unmaintainable, or incorrectly factored, or encapsulation is violated. There are problems were there is dead code that is never executed. There are problems where the style of the code is wrong, even if the code itself is right. (Gack!) There are problems where there are error conditions which are impossible to simulate so you can’t test the code. Even if you step through the code one line at a time, carefully, you won’t take all the possible paths through the code.
Back in the day, desk checking saved a lot of time. Weeks even. And guess what? It still saves a lot of time. Weeks even.
The best way to write clean code is to relax, load up the code, full-screen, turn off all distractions (crank some Zeppelin), and just read through the code, one line at a time, one function at a time. You’ll probably find a lot of little things which can be polished, adjusted, fixed, improved. Most of them might not even be visible to a user, but the code is better for it. If you spend a day writing some code, spend an hour desk checking it. And when you finally do run the code, you won’t just hope it works, you’ll know it works.
Yep, even 36 years later, desk checking is well worth doing.
Comments welcome :)
Welcome to the April Fool's edition of Critical Section. And no we don't suffer fools gladly or even at all if we can help it; you won't find anything foolish here. In fact, let's see what's really happening, shall we?
Is Robert Mugabe negotiating to leave power in Zimbabwe? Dare we hope? We dare.
Powerline skewers House Democrats' Incoherence. "Today House Democrats appealed to ignorance, in their usual fashion, by summoning executives from the five biggest oil companies to berate them for high gasoline prices. This is fundamentally stupid in at least two respects... First, these same Democrats purport to be worried about 'global warming' and committed to taking strong measures to combat it... Second, if you really want the price of gasoline to fall, there is only one way to achieve that goal: increase supply." One wonders if they just don't get it, or just hope that we don't...
Jason Kottke notes "a surprisingly effective idea": using the Google Maps interface for reading a magazine. I have to admit, this is really compelling. (I sure wish Winding Road used this!) Now that I've seen it once, I'm sure I'm going to see it again, and again, and again...
This is pretty awesome: Dan Proops' oil painting of a dialog box, entitled "painting downloading, please wait". [ via Boing Boing ] René Magritte would have loved it!
Some excellent news from Ottmar Liebert: his new album is almost done. That it, almost done as in released, it is truly done as in recorded. I cannot wait.
Congratulations to Dave Winer on 11 years of Scripting News! Not only blogging pretty much continuously the whole time, but great blogging. We don't always agree but I always find what he has to say interesting and relevant, which I can't say about very many others. Best wishes for the next 11 and beyond!
Archive: April 2, 2007
Archive: April 2, 2006
Archive: April 2, 2005
Archive: April 1, 2004
James Lileks is even more penetrating than usual:
Kerry: I mean, there are countless numbers of things that we could be doing to enhance the world's view of us and to minimize the kind of anger and ...
Lileks: We stopped pretending we would ratify Kyoto. We only spent $15 billion on AIDS in Africa. We did not take dictation from Paris. If we had done these things, it would minimize the world’s anger. Is the world angry at Russia, which spends nothing on AIDS and rebuffed Kyoto? Is the world angry at China, which got a pass on Kyoto and spends nothing on AIDS for other countries? Is the world angry at North Korea for killings its people? Angry at Iran for smothering that vibrant nation with corrupt and thuggish mullocracy? Angry at Syria for occupying Lebanon? Angry at Saudi Arabia for its denial of women’s rights? Angry at Russia for corrupt elections? Is the world angry at China for threatening Taiwan, or angry at France for joining the Chinese in joint military exercises that threatened the island on the eve of an election? Is the world angry at Zimbabwe for stealing land and starving people? Is the world angry at Pakistan for selling nuclear secrets?
Read the whole thing. Right now.
This was predictable: Saudi Arabia pledges to fight rising oil prices. Yeah, right. Uh, so who sets those prices?
Ed Ring in AlwaysOn: Gerrymandering must go. "Because of gerrymandering, everything the U.S. Congress and every state legislature does is overwhelmingly influenced by representatives who got there by winning their primary, not their election." Another bad side-effect of two-party politics...
There are so many April Fools pranks on the 'net, you pretty much can't believe anything you read today. One of my favorites is the latest from TidBITS... And here's a nice summary. Gizmodo has one too.
Doc Searles got fooled properly. After reading about Google's Gmail announcement, he posted "Look at all the people who didn't get this joke". Then he got a phone call: "Doc? Yes. It's not a joke. You're kidding! No. It's not a joke." But Doc was wrong, it is a joke :)
Google did have an April Fools joke; they're hiring for their lunar datacenter.
Final Google note: John Battelle notes Google's S1 filing (for an upcoming IPO) includes this detail: "The employee stock option plan, long believed to be the impetus to a public filing, has been dumped in favor of a private shadow equity plan modeled after the Economist magazine. 'It's the only magazine we read that hasn't put us on the cover,' Page explained. 'We kind of hoped this hat tip might change that.'" [ via Mark Frauenfelder ]
Timothy Sandefur recalls Richard Feynman: "Today on the freeway, I drove behind a car whose license plate was 3SVD543. Can you imagine how small the chances are of that happening?" A perfect illustration of Littlewood's Law of Miracles, and the role of sequence in determining probability.
After posting this, I saw Bigwig's post with the same thing. What are the odds? :)
Speaking of life in the universe, NASA is hosting the third annual Astrobiology Science Conference. The Scientist notes: "The conference, which drew more than 700 participants, focused on three questions: 'Where do we come from?' 'Are we alone?' and 'Where are we going?'" So how small are the chances of finding extraterrestrial life? After we find it, the probability will be 1.
If you're interesting in virtual microscopy (you know who you are), you might find Apparent Magnification interesting.
Here we have the Hall of Technical Documentation Weirdness. Amazing and not Photoshopped. For example, what do the elevator buttons at left do? The mind boggles.
A great math joke, from Joi Ito:
John Gruber takes on Eric Raymond: Ronco Spray-on Usability. "UI development is the hard part. And it’s not the last step, it’s the first step." Exactly. I know UI design isn't for everyone, but this is exactly like managing people; many engineers can't do it, so they assume it is easy and worthless.
If you're a blog newbie, you might enjoy Kinja, "a weblog portal". This is some kind of online aggregator. I don't think this will be much of a thing; desktop aggregators are really the way to go. Kinja is to blogs as Hotmail is to email.
This might get me to watch TV: Masters of Disillusionment. "Last year, the show took on topics as varied as creationism, bottled water, secondhand smoke, and alien abductions, in each case setting out to set things straight." I love it. Now adjusting Tivo, stay tuned...
The ninth in our ongoing series attempting to understand engineers:
An engineer was crossing a road one-day when a frog called out to him and said, "If you kiss me, I'll turn into a beautiful princess."
He bent over, picked up the frog and put it in his pocket.
The frog spoke up again and said, "If you kiss me and turn me back into a beautiful princess, I will stay with you for one week."
The engineer took the frog out of his pocket, smiled at it and returned it to the pocket.
The frog then cried out, "If you kiss me and turn me back into a princess, I'll stay with you and do ANYTHING you want."
Again the engineer took the frog out, smiled at it and put it back into his pocket.
Finally, the frog asked, "What is the matter? I've told you I'm a beautiful princess, and that I'll stay with you for a week and do anything you want. Why won't you kiss me?"
The engineer said, "Look, I'm an engineer. I don't have time for a girlfriend, but a talking frog, now that's cool."
Archive: April 2, 2003
This document describes the mission of Aperio Technologies, which is “Automating Pathology”.
Medicine has two parts – diagnosis, and treatment. Medical diagnosis has become highly automated. However, one area of diagnosis remains highly manual – the discipline of pathology.
Pathology is the study of disease; its causes, processes, development, and consequences. Over half of all medical diagnosis is performed by pathologists, and most pathological diagnosis is performed by manually inspecting fluid or tissue specimens with a microscope.
There are two kinds of specimens prepared for microscopic inspection. Cytology is the study of fluid specimens. Histology is the study of tissue specimens.
A cytology preparation is a “smear” of liquid, such as blood, embryonic fluid (amniocentesis), cervical fluid (pap smear), lymphatic fluid, etc. spread onto microscope slides. The smear is stained to provide visual contrast for cells suspended in the liquid, and to highlight abnormal conditions, such as metastasizing cancer cells. A cytologist visually inspects slides looking for “things which are wrong”; a rare event detection process akin to searching for a needle in a haystack.
Histology preparations are thin slices of tissue which are “floated” onto microscope slides, then stained and fixed. The stain(s) provide contrast to show tissue structure and cell details, and to identify distribution of proteins such as antigens. A histologist visually inspects slides looking for abnormal “architecture”, cells which exhibit unusual morphology, and to gauge the proportion and density of staining.
Automating pathology would yield two major benefits:
1) Time savings. Improve speed of diagnosis and productivity of pathologists.
2) Accuracy. Reduce false negatives and improve precision of measurements.
Each of these benefits translates directly into cost justification for investment in new technology. There are three steps to automating pathology:
1) Digitize slide data. A device must convert the visual data on a slide into a digital image at high resolution and with no image artifacts.
2) Manage “virtual slide” images. Digitized slide images (“virtual slides”) are very large. A system must store, retrieve, and display such images, and provide remote access.
3) Automate slide analysis. Create software which performs repetitive tasks such as rare event detection, assay quantification, and tissue classification (pattern recognition).
The Technical Obstacles
Since pathology is such a large and important part of diagnostic medicine, and since it remains highly manual and therefore represents a substantial opportunity for automation, what has kept automation from being adopted? There are several severe technical obstacles.
First and foremost, to automate pathology it is essential to digitize slide data. There are several practical obstacles to doing this efficiently at high resolution:
n The amount of data captured is very large. A typical pathology specimen measures 15mm x 20mm. At 400X magnification (using a 40X objective lens) the required image resolution is about .25µ/pixel (µ = micron = 1/millionth of a meter). That means the digital image of a typical specimen measures about 80,000 x 60,000 pixels, and contains about 14.4GB of data. That’s big.
n Maintaining accurate focus is quite difficult. Although a microscope slide appears “flat”, at sub-micron resolution it is actually full of hills and valleys. The “depth of field” of a typical high resolution microscope is about .2µ, and the hills and valleys of a sample can be 10µ high. There may also be a persistent “tilt” to a sample which can be as much as 100µ. So digitization of a slide sample requires constant and accurate focus adjustments.
n Elimination of optical artifacts is crucial. The usual approach to digitizing slides has been to take a picture of a microscope’s field of view, move over, take another picture, move over, etc. This is called “tiling” and results in thousands of pictures which must be “stitched” together to form a complete image of the specimen. Tiling is not only quite slow (it can take hours) but it also yields significant seam artifacts.
Secondly, automating pathology requires a system to manage “virtual slide” images. As noted above, virtual slides are very large. An automated pathology system must efficiently store and retrieve very large image files, and must support the following capabilities:
n Rapid panning and zooming. This capability is essential for viewing; pathologists typically view slides at low resolution and zoom in and out on “interesting things”. Virtual slides are too large to be loaded into a computer’s memory, so careful data organization is required to support direct access to any portion of a virtual slide, at any level of zoom.
n Incremental remote access. Sharing slide data over computer networks is a key benefit of automating pathology (“telepathology”). Because virtual slides are too large to copy easily, the system must enable incremental transmission of slide data for remote access.
n Database storage for metadata. Each pathology specimen has critical metadata associated with it; patient information, case notes, preparation notes, etc. These data must be stored in a database associated with the virtual slide images to enable rapid searching and maintenance. Annotation capabilities are likewise essential; annotations become part of the medical record associated with an image and must be managed by the database.
Third, automating pathology entails automating slide analysis. There are several important technical obstacles to doing so:
n Processing time. As noted, virtual slide images are very large. Computer analysis of very large image files must be performed efficiently and in a distributed fashion.
n Visualization of results. Slide analysis results must be displayed in a fashion which facilitates interpretation by pathologists and aids their diagnosis.
n Pattern recognition. Sophisticated pattern recognition techniques are needed to identify “things which are ‘different’” as well as “things similar to things seen before”. The usefulness of automated analysis depends directly on the accuracy of pattern matching.
Aperio Technologies has developed solutions for each of the technical obstacles described above, enabling – for the first time – the automation of pathology.
Digitize slide data
Aperio has developed the ScanScope®, a revolutionary device which can digitize entire slides at high resolution in minutes. It is based on patent-pending methods that combine a linear array detector with high-performance opto-mechanics. The ScanScope uses the same type of camera used in satellite photography; the scanner essentially “flies over” the slide, acquiring linear stripes of image data. The optical focus is automatically adjusted hundreds of times per second, yielding accurate focus over the “roughest” specimen terrain. The ScanScope is much faster than “tiling” systems, and crucially the resulting images have no optical artifacts.
Manage “virtual slide” images
Aperio’s platform software is a patent-pending “operating system” for virtual microscopy. It controls the ScanScope hardware, compresses virtual slides into a standard image file format, stores virtual slides in a standard database format, coordinates remote viewing of virtual slides, and supports virtual slide analysis. A file format has been devised which supports JPEG2000 wavelet encoding of image data, yielding a 20:1 reduction in file size. This format supports rapid panning and zooming to any portion of the virtual slide. Aperio has created a network transport mechanism to incrementally transmit slide data efficiently over wide-area networks, enabling remote viewing and analysis of slide data. A standard SQL database is used to store slide metadata, including annotations and automated analysis results.
Automate slide analysis
Aperio has developed a simple yet sophisticated architecture for automated analysis. The “algorithm framework” includes facilities for incremental access to slide data at any level of zoom, parameter processing, progress and result reporting, and distributed processing (“grid computing” for slide analysis). The results of algorithmic analysis are displayed as “overlays” on slide images, making interpretation straightforward and facilitating pathological diagnosis.
Aperio has developed several end-user applications which build on this framework to provide computer-aided-diagnosis:
- TMALab - specialized software for the analysis of tissue microarrays (TMAs).
- Rare event detection algorithms for finding metastasizing cancer cells in blood, and locating metaphase-spreads in amniocentesis and bone-marrow specimens.
- Image analysis algorithms for quantitative analysis of immunohistochemistry (IHC) assays, including her-2 expression for breast cancer.
- Novel pattern recognition algorithms based on featureless heuristics. These algorithms support content-based image retrieval and can quickly detect “known” patterns as well as flag “new” patterns.
Each of these solutions overcomes serious technical obstacles in novel ways. Automating pathology is a clear opportunity, and Aperio has the technology to make it possible.
Correlation vs. Causality
The Tyranny of Email
Aperio's Mission = Automating Pathology
Try, or Try Not
Books and Wine
God and Beauty
Moving Mount Fuji
Rock 'n Roll
IQ and Populations
Are You a Bright?
The Joy of Craftsmanship
The Emperor's New Code
The Return of the King
Religion vs IQ
In the Wet
the big day
solving bongard problems
the nuclear option
estimating in meatspace
On the Persistence of Bad Design...
Texas chili cookoff
almost famous design and stochastic debugging
may I take your order?
New Yorker covers
Death Rider! (da da dum)
how did I get here (Mt.Whitney)?
the Law of Significance
Daniel Jacoby's photographs
the first bird
Gödel Escher Bach: Birthday Cantatatata
Father's Day (in pictures)
your cat for my car
Jobsnotes of note
world population map
no joy in Baker
where are the desktop apps?