Hacker News from Y Combinator

Syndicate content
Links for the intellectually curious, ranked by readers. // via fulltextrssfeed.com
Updated: 6 hours 12 min ago

Yosemite Sends Spotlight, Safari Searches to Apple, third parties

6 hours 12 min ago
README.md

This repository provides a corpus of network communications automatically sent to Apple by OS X Yosemite; we're using this dataset to explore how Yosemite shares user data with Apple.

The provided data was collected using our Net Monitor toolkit; more information regarding usage and methodology is provided below.

included in the request. (si_vi is used by Adobe/Omniture's analytics software).

If we search the logs for the cookie value, we can find:

DuckDuckGo for Privacy

Having read DuckDuckGo's privacy statements, you might decide to switch Safari's default search to DuckDuckGo. If we enter a new search in Safari, we can then search the logged data to see who the search terms are actually sent to.

The logs show that a copy of your Safari searches are still sent to Apple, even when selecting DuckDuckGo as your search provider, and 'Spotlight Suggestions' are disabled in System Preferences > Spotlight.

Non-Cloud Mail Account

When setting up a new Mail.app account for the address admin@fix-macosx.com, which is hosted locally, searching the logs for "fix-macosx.com" shows that Mail quietly sends the domain entered by the user to Apple, too.

Two different datasets are provided; these were generated in independent VMs with fresh installs of Mac OS X Yosemite:

  • eff-user-r0

    • All data sharing options disabled.
    • Location services disabled.
    • iCloud not used.
    • No Apple ID used.
    • DuckDuckGo selected as Safari search engine
  • icloud-user-r0

    • Installed with all default options, including sending of "Diagnostics and Usage Data".
    • iCloud and most iCloud features enabled, including iCloud drive.

All TCP/SSL connections are logged with one file per connection: <application path>/<iso 8601 time>-<username>-<src addr>-<dest-addr>.log Non-TCP traffic (such as UDP, ICMP) is logged in pcap format in udp-monitor/*.pcap.

  • documenting privacy issues.
  • Enhanced automated dataset visualization/decoding.
  • Adding application-specific support for processes using client-certificates to SSLsplit.
  • Automated (re-)generation of the datasets (e.g, scripting installation and application use).
  • Using net-monitor to gather data from AirDrop, Handoff, and other technologies that are difficult to run in a VM environment.
  • Exploring work-arounds (e.g., sandboxing, firewalling).

Amazon is not Monopolistic, it is Monopsonistic

6 hours 12 min ago

HTTP/1.1 302 Found Date: Mon, 20 Oct 2014 09:29:36 GMT Server: Apache Set-Cookie: NYT-S=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/; domain=www.stg.nytimes.com Set-Cookie: NYT-S=0M9jB85ro2SaLDXrmvxADeHIqzIVqKLgOTdeFz9JchiAIUFL2BEX5FWcV.Ynx4rkFI; expires=Wed, 19-Nov-2014 09:29:36 GMT; path=/; domain=.nytimes.com Location: http://www.nytimes.com/2014/10/20/opinion/paul-krugman-amazons-monopsony-is-not-ok.html?mabReward=RI:7&action=click&pgtype=Homepage&region=CColumn&module=Recommendation&src=rechp&WT.nav=RecEngine&_r=0 Content-Length: 0 nnCoection: close Content-Type: text/html; charset=UTF-8 HTTP/1.1 200 OK Server: Apache Cache-Control: no-cache Channels: NytNow Content-Type: text/html; charset=utf-8 Transfer-Encoding: chunked Date: Mon, 20 Oct 2014 09:29:36 GMT X-Varnish: 2130435079 2130425196 Age: 249 Via: 1.1 varnish X-Cache: HIT X-API-Version: 5-5 X-PageType: article Connection: close 0024ba

Sections Home Search Skip to content Skip to navigation View mobile version The Opinion Pages|Amazon’s Monopsony Is Not O.K. http://nyti.ms/1y8tcoq See next articles See previous articles The Opinion Pages | Op-Ed Columnist |​​NYT Now Continue reading the main story Share This Page Continue reading the main story

Amazon.com, the giant online retailer, has too much power, and it uses that power in ways that hurt America.

O.K., I know that was kind of abrupt. But I wanted to get the central point out there right away, because discussions of Amazon tend, all too often, to get lost in side issues.

For example, critics of the company sometimes portray it as a monster about to take over the whole economy. Such claims are over the top — Amazon doesn’t dominate overall online sales, let alone retailing as a whole, and probably never will. But so what? Amazon is still playing a troubling role.

Meanwhile, Amazon’s defenders often digress into paeans to online bookselling, which has indeed been a good thing for many Americans, or testimonials to Amazon customer service — and in case you’re wondering, yes, I have Amazon Prime and use it a lot. But again, so what? The desirability of new technology, or even Amazon’s effective use of that technology, is not the issue. After all, John D. Rockefeller and his associates were pretty good at the oil business, too — but Standard Oil nonetheless had too much power, and public action to curb that power was essential.

And the same is true of Amazon today.

If you haven’t been following the recent Amazon news: Back in May a dispute between Amazon and Hachette, a major publishing house, broke out into open commercial warfare. Amazon had been demanding a larger cut of the price of Hachette books it sells; when Hachette balked, Amazon began disrupting the publisher’s sales. Hachette books weren’t banned outright from Amazon’s site, but Amazon began delaying their delivery, raising their prices, and/or steering customers to other publishers.

You might be tempted to say that this is just business — no different from Standard Oil, back in the days before it was broken up, refusing to ship oil via railroads that refused to grant it special discounts. But that is, of course, the point: The robber baron era ended when we as a nation decided that some business tactics were out of line. And the question is whether we want to go back on that decision.

Does Amazon really have robber-baron-type market power? When it comes to books, definitely. Amazon overwhelmingly dominates online book sales, with a market share comparable to Standard Oil’s share of the refined oil market when it was broken up in 1911. Even if you look at total book sales, Amazon is by far the largest player.

So far Amazon has not tried to exploit consumers. In fact, it has systematically kept prices low, to reinforce its dominance. What it has done, instead, is use its market power to put a squeeze on publishers, in effect driving down the prices it pays for books — hence the fight with Hachette. In economics jargon, Amazon is not, at least so far, acting like a monopolist, a dominant seller with the power to raise prices. Instead, it is acting as a monopsonist, a dominant buyer with the power to push prices down.

And on that front its power is really immense — in fact, even greater than the market share numbers indicate. Book sales depend crucially on buzz and word of mouth (which is why authors are often sent on grueling book tours); you buy a book because you’ve heard about it, because other people are reading it, because it’s a topic of conversation, because it’s made the best-seller list. And what Amazon possesses is the power to kill the buzz. It’s definitely possible, with some extra effort, to buy a book you’ve heard about even if Amazon doesn’t carry it — but if Amazon doesn’t carry that book, you’re much less likely to hear about it in the first place.

So can we trust Amazon not to abuse that power? The Hachette dispute has settled that question: no, we can’t.

It’s not just about the money, although that’s important: By putting the squeeze on publishers, Amazon is ultimately hurting authors and readers. But there’s also the question of undue influence.

Specifically, the penalty Amazon is imposing on Hachette books is bad in itself, but there’s also a curious selectivity in the way that penalty has been applied. Last month the Times’s Bits blog documented the case of two Hachette books receiving very different treatment. One is Daniel Schulman’s “Sons of Wichita,” a profile of the Koch brothers; the other is “The Way Forward,” by Paul Ryan, who was Mitt Romney’s running mate and is chairman of the House Budget Committee. Both are listed as eligible for Amazon Prime, and for Mr. Ryan’s book Amazon offers the usual free two-day delivery. What about “Sons of Wichita”? As of Sunday, it “usually ships in 2 to 3 weeks.” Uh-huh.

Which brings us back to the key question. Don’t tell me that Amazon is giving consumers what they want, or that it has earned its position. What matters is whether it has too much power, and is abusing that power. Well, it does, and it is.

Charles M. Blow is off today.

A version of this op-ed appears in print on October 20, 2014, on page A25 of the New York edition with the headline: Monopsony Is Not O.K..

More on nytimes.com

Site Index

Piccolo, the tiny CNC-bot

6 hours 12 min ago
Piccolo, the tiny CNC-bot

Piccolo is a pocket sized open source CNC-bot. Using laser-cutting, off-the-shelf hardware and Arduino, you can make your own simple 3 axis robot. Attach a brush or pen to make a quick drawing robot, or extend Piccolo with sensors, custom toolheads, or by using multiple Piccolos together. Experiment with 2D or 3D digital fabrication at a small scale!

Uses Arduino and is powered over USB or by an external 5V supply. Either use the Piccolo PCB, or another Arduino compatible board.

Clip on toolheads. Use the default pen holder, or design your own output tools.

Miniature CNC. 50x50x50mm output envelope fits conveniently on a sticky note.

What's Piccolo Up To?

We gave a workshop at Baltan Labs in Eindhoven, helping people assemble their own Piccolos. Special thanks to Baltan Labs and OddOne.

How to Build Your Own Piccolo

1. Piccolo v1 Ingredients
  • Laser-cut Parts
  • 3x Micro Digital Servos
  • M3 Cap Screws and nuts
  • Piccolo PCB with Pro Micro
    or
  • use another Arduino Compatible board

Full list of parts and help for where to get them

2. Laser Cut

Piccolo v1 uses 3mm MDF or Hardboard and 3mm Acrylic, with some paper spacers.

Find a local laser cutter or use an online cutting service.

3. Assemble

Assembly is simple and takes about 2 hours.

4. Program

We wrote a library for Arduino that makes it simple to write Arduino code for Piccolo with useful drawing and control functions.

Simple Arduino example using PiccoloLib:

// Piccolo, draw some circles please #include "Servo.h" #include "PiccoloLib.h" PiccoloLib piccolo; float maxRadius = piccolo.X.getBedSize()/2.0; void setup(){ piccolo.setup(); piccolo.home(); } void loop(){ for(float r = maxRadius; r > 0; r -= 1) { piccolo.ellipse(0,0,2*r,2*r); } piccolo.home(); while(1); } // Thanks Piccolo! 5. Play

Controllo is a simple Processing app for easily sending test patterns to Piccolo, and you can also use it to import your own SVGs. Use the PiccoloLib example 'usbTether' to connect with Controllo.


To make your own Processing apps with Piccolo, you can download a Processing library called PiccoloP5 which includes Controllo as an example sketch.

6. Experiment and Share

You can find references for PiccoloLib and Controllo on GitHub, as well as an FAQ and help for debugging your Piccolo. Share your work and look for other examples in the Piccolo Flickr pool and on in the list of example projects.

Open Source Hardware

The design files for Piccolo v1 and the previous Piccolo versions, as well as the PiccoloLib and Controllo sources and more, are all available on GitHub, free to be modified or repurposed.

  • Use a different model of servo or accomodate a different material thickness.
  • Design your own Piccolo toolheads.
  • Modify Controllo to make your own Piccolo Processing apps.
  • Port PiccoloLib to a different development platform.



Can I Buy a Kit?

The Piccolo project has been an ongoing open-source collaboration to design a simple and accessible CNC platform that works well as a kit, and we have been producing small batches of kits for workshops and conferences.

Our aim hasn’t been to commercialise Piccolo by selling kits but we would love to see Piccolo more readily available to anybody who wants one. If your company is interested in producing and selling Piccolo kits to help achieve this, please feel free to get in touch.

The Piccolo hardware designs are available under the Creative Commons Attribution-NonCommercial-ShareAlike license. Anybody is welcome to produce their own batches of Piccolo kits for non-commercial purposes, such as classroom workshops.


Comments

Please enable JavaScript to view the comments powered by Disqus.

comments powered by

By Diatom Studio in collaboration with Cheng Xu and Huaishu Peng.

Say hello at: piccolo@diatom.cc

Facebook's software architecture

6 hours 12 min ago
I had summarized/discussed a couple papers (Haystack, Memcache caching) about Facebook's architecture before.

Facebook uses simple architecture that gets things done. Papers from Facebook are refreshingly simple, and I like reading these papers.

Two more Facebook papers appeared recently, and I briefly summarize them below.

TAO: Facebook's distributed data store for the social graph (ATC'13) A single Facebook page may aggregate and filter 100s of items from the social graph. Since Facebook presents each user with customized content (which needs to be filtered with privacy checks) an efficient, highly available, and scalable graph data store is needed to serve this dynamic read-heavy workload.

Before Tao, Facebook's web servers directly accessed MySql to read or write the social graph, aggressively using memcache as a look aside cache (as it was explained in this paper).

The Tao data store implements a graph abstraction directly. This allows Tao to avoid some of the fundamental shortcomings of a look-aside cache architecture. Tao implements an objects and associations model and continues to use MySql for persistent storage, but mediates access to the database and uses its own graph-aware cache.

To handle multi-region scalability, Tao uses replication using the per-record master idea. (This multi-region scalability idea was again presented earlier in the Facebook memcache scaling paper.)F4: Facebook's warm BLOB storage system (OSDI'14) Facebook uses Haystack to store all media data, which we discussed earlier here.

Facebook's new architecture splits the media into two categories:
1) hot/recently-added media, which is still stored in Haystack, and
2) warm media (still not cold), which is now stored in F4 storage and not in Haystack.

This paper discusses the motivation for this split and how this works.

Facebook has big data! (This is one of those rare cases where you can say big data and mean it.) Facebook stores over 400 billion photos.

Facebook found that there is a strong correlation between the age of a BLOB (Binary Large OBject) and its temperature. Newly created BLOBs are requested at a far higher rate than older BLOBs; they are hot! For instance, the request rate for week-old BLOBs is an order of magnitude lower than for less-than-a-day old content for eight of nine examined types. Content less than one day old receives more than 100 times the request rate of one-year old content. The request rate drops by an order of magnitude in less then a week, and for most content types, the request rate drops by 100x in less than 60 days. Similarly, there is a strong correlation between age and the deletion rate: older BLOBs see an order of magnitude less deletion rate than the new BLOBs. These older content is called warm, not seeing frequent access like hot content, but they are not completely frozen either.

They also find that warm content is a large percentage of all objects. They separate the last 9 months Facebook data under 3 intervals: 9-6 mo, 6-3 mo, 3-0 months. In the oldest interval, they find that for the data generated in that interval more than 80% of objects are warm for all types. For objects created in the most recent interval more than 89% of objects are warm for all types. That is the warm content is large and it is growing increasingly.

In light of these analysis, Facebook goes with a split design for BLOB storage. They introduce F4 as a warm BLOB storage system because the request rate for its content is lower than that for content in Haystack and thus is not as hot. Warm is also in contrast with cold storage systems that reliably store data but may take days or hours to retrieve it, which is unacceptably long for user-facing requests. The lower request rate of warm BLOBs enables them to provision a lower maximum throughput for F4 than Haystack, and the low delete rate for warm BLOBs enables them to simplify F4 by not needing to physically reclaim space quickly after deletes.


F4 provides a simple, efficient, and fault tolerant warm storage solution that reduces the effective-replication-factor from 3.6 to 2.8 and then to 2.1. F4 uses erasure coding with parity blocks and striping. Instead of maintaining 2 other replicas, it uses erasure coding to reduce this significantly.

The data and index files are the same as Haystack, the journal file is new. The journal file is a write-ahead journal with tombstones appended for tracking BLOBs that have been deleted. F4 keeps dedicated spare backoff nodes to help with BLOB online reconstruction. This is similar to the use of dedicated gutter nodes for tolerating memcached node failures in the Facebook memcache paper.
F4 has been running in production at Facebook for over 19 months. F4 currently stores over 65PB of logical data and saves over 53PB of storage.Discussion 1) Why go with a design that has a big binary divide between hot and warm storage? Would it be possible to use a system that handles hot and warm as gradual degrees in the spectrum? I guess the reason for this design is its simplicity. Maybe it is possible to optimize things by treating BLOBs differentially, but this design is simple and gets things done.

2) What are the major differences in F4 from the Haystack architecture? F4 uses erasure coding for replication: Instead of maintaining 2 other replicas, erasure coding reduces replication overhead significantly.  F4 uses write-ahead logging and is aggressively optimized for read-only workload. F4 has less throughput needs. (How is this reflected in its architecture?)

Caching is an orthogonal issue handled at another layer using memcache nodes. I wonder if the caching policies treat content cached from Haystack versus F4 differently.

3) Why is energy-efficiency of F4 not described at all? Can we use grouping tricks to get cold machines/clusters in F4 and improve energy-efficiency further as we discussed here?

4) BLOBs have large variation in size. Can this be utilized in F4 to improve access efficiency? (Maybe treat/store very small BLOBs differently, store them together, don't use erasure coding for them. How about very large BLOBs?)

SmileBASIC for Nintendo 3DS

6 hours 12 min ago

SmileBASIC is a programming language called BASIC specifically tailored for Nintendo 3D.

BASIC has been a very popular programming language for the beginners since the early days of the personal computer era. SmileBASIC is designed to be much easier and simpler than any other modern programming languages. Just start SmileBASIC, type your program, run it and have fun with what you get! You can enjoy programming intuitively with no worries.

Now SmileBASIC comes to Nintendo 3DS with 3D viewing support. It should be a unique programming platform in the world to program 3D easier than ever!

Also, you can utilize data in your program from the built-in accelerometer, gyro-sensor, microphone and the circle pad. Get the most out of potential of Nintendo 3DS!

Simple CPU

6 hours 12 min ago
Let's dive right into the magical land of data.

What's the symbol for five? 5
What's the symbol for ten? 10

But wait, isn't that the symbol for one and zero?

Right, so in our numbering system, when we get to the number ten, we write the symbol
for one and zero. There is no symbol for ten, we simply recycle the ones we already have.
Because of this we call our numbering system "base-ten", or "decimal".

"Ones and zeros", "true and false", and "on or off" are all terms you have probably heard
before. What these are all referring to is a different kind of numbering system.
For our decimal system, we write a '10' when we get to ten, but for binary, we write a
'10' when we get to two. There is no symbol for two in binary, exactly how there is no
symbol for ten in decimal. "On" or "off" simply refers to '1' or '0' in binary.

Just to be sure you understand binary, try clicking the binary counter here:

Making sure crypto remains insecure [pdf]

19 October 2014 - 7:00pm

%PDF-1.5 %ÐÔÅØ 3 0 obj << /Length 209 /Filter /FlateDecode >> stream xÚmŽ1kÃ0…wÿ ME¢ÚRªØkÒè¦N¥ƒ/ñQçT,5à·¥C¸áqð¾÷ž–†ÕËé¢þRmmõø¢jÖÉÎ(Ãì‰m¤bª1ÒtOÌö읿ºO¤³Xi­yüž@|Øã¯-»u›=~š¿R(žä„Úð9æ)‚ÿ-UªD?;B³ï(tÍ·0QL€tx#¼Â1 Õò9á”㈰Ժ”u7 w琭÷¶[Ñj~ Œ~€Lýõ–œ=R?„+üΪö¶º|Y@ endstream endobj 11 0 obj << /Length 241 /Filter /FlateDecode >> stream xÚmO»NÄ0ìý.í">?.‰CÉKT wˆ"º,¹bÇpâïqn¢8¹˜Ñì̬׈ŠÊüÌŠû‘|Uj!›Êž%•0Mmi-4UººZ\›Ý¨éu äÒ‘Í­–´M•gƔÔuô™9n ƒ×–ÅaN¼0Æ°Á#Þß/lËöâîóÞBÑl-L§ L-âŒî0ŸØ|D¹ƒ¶{ÿÆÑqÑ¡x‘1øsÝíú›«ÃàaìèÃD?‚Oÿzò’šE®ØÛB Îâ¯/¯×cwcÛ¦öº!]𢔒=Ágú͐G~v/^ß endstream endobj 8 0 obj << /Type /XObject /Subtype /Image /Width 585 /Height 390 /BitsPerComponent 8 /Length 25592 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿíÒPhotoshop 3.08BIM¶Photoshop 3.08BIM›CHINA-HONGKONG/ORIGINALIPOL VIO BIZ TPX GM1EA9T01D501:rel:d:bm:GF2EA9S19A201720140928A JPEGTOII2/MEDF1.0.0.16P© Tyrone Siu / ReutersZHONGKONGdCHNeChinagHKG101i°A protester throws an umbrella at riot police as fellow demonstrators blocked the main street to the financial Central district outside the government headquarters in Hong KongnREUTERSsX02605xØA protester throws an umbrella at riot police as fellow demonstrators blocked the main street to the financial Central district outside the government headquarters in Hong Kong September 29, 2014. REUTERS/Tyrone SiuzTS/ys‡enÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC $.' ",#(7),01444'9=82<.342ÿÛC 2!!22222222222222222222222222222222222222222222222222ÿÀ†I"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ?ô/ ø™”Ä*Ô‚šE?•JÊzFÇð©*xÎ)Îå¾ì. ±xåƒT» \šqŠÓ·¼+ŽjŒzUïüòÇÔÕÈô‹Î2~5œ’e«ž…ðÛRøš9eDŽâØâ¨ø‘í%¸¹»³¿IÈÎйÃO8õª>wÒMɞy‚ËM‘`†ÈÇ9¬¹t—–gst['ï0äýkŸ“Þò6¾†eÌ…^+6R3ÖºOì5?zsø aðý¿ñH溒2i³Úñ­¤²ÿ8àÿŸZö†Þ!Ñõ[CE¾uŠk¹˜eåH¸ŒcƒÇQý+͇‡ìÇ]çþSÁ¥Z[J’Æ$C•ur>µjªFR¤Ø߉Ÿ£øªâ-%]m«lfݵŽrî=+‹èwŽ/¤ó.ØJäYûâª}=9Ùü¢è8ÓvÕœ¬‹n,íÚæs‘*ƒÐŠHâ’G çé]xšÂ>úbž/ì‡ISðå(y˜Ëhe±1,x–?›î›Û4–¶—¹µ}En VÍå¦~‹R.·j:o?ðÆåÙi°^ǃå‘õ5´²ê ®É àc†éXÑëÖëÑd?…\³Ö#»ŸËD`qœšÆQLÑ;\ÙÜÜ/"œœäœšË“F¹åºUÁà€sZ:†¤Öa—¹[¾k&]yÏH×ó¦£m›DO¡;lj.>lõ©Éáx²fÀT’kÓöTª¯®]…áZÅ2C‡…¬ÇÞyãNÓÇUsõj¦ÚÍÙÿ–ƒò¨W»?òØâ´÷»“xö6âѬa‰£X†êO&hZxÿ—d¬Õnü¼ŸÎ¢mNcÖå¿ïªvbæGR4Ë$ññíO[[DäGüqͨ9ë;ßU¾Ïüµ?W+2;¶Ëÿ<ÇåG™l¿ÇüEp|£¬§ó¦ý¹ñ“O”9ÎìÝZùk4ßÙ¯ü¶JàÍôcø0ßÆ{ÓåsÑá’9âܧ¡®cÆvû­b˜Q±[ú*cG¶?ÞMߟ5KÄ1› ¡x.áNKcÍÍ6¥’&FÚEFx­Œ„¢Š(ž#cÎ8§Ä¿&q’MLĐ0[ѡIJ9츮j––¤[Èþ§uA«[b­?Ây¦HæŒS©§õ Bސ­(¦€¦šu!P ¨P)ӶсYŒÎd'êþuF’¦|0ê «§HÑî†EcèMC©g«]‘0³Ó—øœ©§¯Eò¬;‰.­Û•÷íùÕíþà«Wz¢n‘Ô¬¶kÐ/àµaš8àÊû ㆥ6x»]>.ôÈpâ9¥+Å];•WQ€”J5í½ý›–~Þè®åã# ŽõvÛYð¼z­½ýº˜$Fùá‘Ä߁íJ¼WLš•9š1?´ÈéëKý¨ý~uµâÏønïOš="(äpY^Úb—Õ[¡î¤}¯7óäÿžùÕ:Mujó-Ž»ûJcœ*Šµ+ï¨ü*Ÿ†[}ÅÑbXwÈ<ö¬-ÌrrjÚ¹£–—:VÔ¦gò«ÚUË\É 2ïÀõé\Œ‘ºB’7*Ý tPMÁú W¸);س¬ÃqùÑHå?‰sÒ°›P†‘óõ®æâ5q‚2ï\Þœñ_M(1–wQíJžŒSºØF¾Õ0Þ¡þª@Àcš¿skŠ¹ÀËØ÷­\R"í’ÝH2yR,Á£qÆßcQÑòãñ¨§TŒù|ð9Å*…xA‡Ï_j\¨.ËKrÝp)ëyŒg€ªòBñª–2*U²•¬žå"sg8.N~¼ÑȘîÑ`^œptÞU–ÐÝC—)øW>PO§ø×s :»Ž³’=9úTN " îÍBqg°÷W5ÆÂS'p$W£N1hû«šóI"Ç.§ž£ëS¨äÊO)'÷ß½Fîã’íùÕƒ 3¼G®Þ:ÔÒÙ1E1ÆÒîÏÝí[+a¸+¸Ë´`ôª³<Š¥@?7øV²ÙÈZ<Á´óŽ}ª6Ó.ˆèàýZšKpf>xnOz`w~·H¹*فǭI»Î|¨‡9ëWqY˜þ^[õ¥tØ@Ç9¶eÓn#]è¨1ÔŸJ{i—2M’#òÿ‡ÖŽ`±åoùˆîi*Ž€ ßþǺç揩‡HºäëŠNH,aÊ¡B)qùT*„‘](ÒÞ8‹HëÇ$Ú³­íŒ·Ñ*ôg8ÊàÑé6QyV0G»Ò³5ÿJ_GR¦·6á>‚±õ%ÊnTƒJŽ¥Ìóû½öÒº¶2¨LûÈã æµ|@›u6n̐k[Xͱ”RÒSj6€zž•5ªÌË;WžôÈÆÔ>ðéVmb72¬DI,Ýϵ] fžž›lý£š³ŽqI m·@ð¼æ¬¡6ÓvŽ´óÅÊÐDaM0Ž*b¼b˜Ês@)qJ# î&Œs@†Uk‰ÕNúÔÓ‰Ö°îg,ì3Ò¢NÃ,Ë>þ֡ƥж°v>æ•Ï‡ï-²È¢dõN¿•wR4øC½+´ñÄD,Ê$_^†»Í*Už•A—<Ö5¥5LÒ 7ЋÄCnƒrÙ¯0û׫ëVís¤Ïcs3\Yý?jµ#žcô"«Ó‹W&½Ó½Œ¨ášTwŽ7uŒeÊ©!G©ô¦]F­\hWi}§Må3-Óh"E=U—£èES½‚‹Ø¤U…<÷ÉEùU =1ØW\ícÝêhxJÕ±©—&7¬T:œ6EdhÖéwvbuV\d‚pqí]]´ÐXièÈ÷(¾PL‡°úW ¼ö·K"±V^F:×:wæ7’µ‰õ›4í©¦Kv9\õÐÖÏ„ýžf=ØVUíÔ—Q3JË»Á^µµáZÊB¿ŠRoJÜÇE0ã5Åj7_jq‚0cÈʯÍ××½wˆØú ó«»É Ã(?w uÅE5vTÙìY·'^üsP®ì¤ÜÊ®ÛC°—•ö–'v4À‹«!˜6Py­“[Û©Zçþ>×°±h°‘éô«rØ\=Óí…qŸ¼ÍÅ\·Ò2‡Î˜ýmª¸¬P/ ŒÅ#(\ädò*eŽI#UÔŒñÀ<Ö¬vV–ü¤ °îFãHÓG2HãgælÊ— íÜË–ÖhcêŠ Æ3“]g‡çŠ[ ±Û¬[RA$±õ5„÷67@¸È¢ñ]qZ‘—õÍgQû¥Gs~åY:Ž¦2å\e½©Aµ­v°êWs ýßáY¬R$i<•Â}”œðOOϵ$+n擉dõ?Z…k±½u°ñ¡éá³æŸÎ».$†ÝÈ«Åpï+’G†‰¸`zŠît>āŽFÞµ•tùlÙPµô'¿`–NÛ°=k Þê+-Ñ&Ü qV5†Xìåò™¶c•&¹ëw §Sit<žã؊ʝ+Är–¤úÜ:}¿ï"ŒI‹•p¥yú„VLr³ÆeÞTàîÎH­¶-ý‰‹ ô$`Š ¶‚cgÚ1Á®¨i3)o¡£}%¼k±HXð~´Ëya¸O*;9vþÈ­"w̽öõ–€˜K$gƒ¸b—.}Hchd¸d—î°À>õÒxN›©ÿž¤V#Z³n °“Ôâº_ B"² 9rh›ÐqÜÙ»\ZÈ}×o§Å=¼ +.Ní^…"Fd‚+m"8Už%bÐ”EtsÂÄj…A+ßÖœbÉ'R2qW¼ËqÄK’:ñJ±\N Hð£©=kdˆ½ÈIÜê9íR„'?SCiw“F|•Þ}sùšÛ´Ñí-íãk“ºM ¶æã5\ÈlåõEm!ùG'Ú¹;‹—žfrÇæ<ÖûU#€(AÀ_\šË²Ñ¦¹_2fò!빇'è(RÝæ¹Àô­}+Y¸ÓîI,†Ù`ò¨e°‚Þ2c•É=¸ÍZÒ­t÷‘[P™–%¢}æüqIÆàI’ùo´Qubû·`ƒéFŸ©Er7QÕ[£Vf—aock#é·¦ãNœ‚CóÆã¯à¥O-²L2~WVŽ—"riš}d¨¶qþÍ#Ÿí8Õ8Î5Ž³²?•pCz8«H^F߈­Tc¹‹œ‘¥žÊâI–AзAôp[ÊOÜJ ºÜH¼n_àT£^Q÷mœýMS„*¥Bè´˜ÿ R¾›<±²|ƒpÆqÒªH:Z~mR/‰'ÿŸ1ÿ}QÉL=¥@¶ðëCµœ‰F·E­dIœü¿•DBtP-Óû¢‹ŠÆv]Æqž•£¤[Ÿµ @(ò•oK\Ë+vh¥Ì;X£à¤ Nh¸ÃÖâÎ)‡žÔîO\QŽi{ÒãŠ.!„S{ÓÍ%;€ÆUgN¾½êÞ3I´PÕÀ©a$u¬ëÅÿHVÞ*“[ nw7AR㥀|C(ö§šq^x ŽõbSH§ö¤ëLa©¦ž(&^ÔÂ1Rš‰³š@4ÓH¥9¦“Í+€ÓÅ%)4ÜûQp4.¤ò¥òœ288¤Vä碭]Ëò+JGšG_z¬ITÛ¼t´“m·5t9‘ç—j@õëR\\Iv^GqPh*¿j|dt«s&%`=kŠªØç$¹d8qœ‚GéZ0:\Ûy˜Pë÷€è}ê­Þ#º!ÁØJ’9&ÒÜ«ÄèÌ2®2N i­´&úê$Α©A» Î3‘š«ü§µ>i\>ÜgµDŠs’qÍ&.<èjzsÚ»)7Z@ ãh®F#U`[ ®ÿL-!Ü1…é\Õ–†+ëð¢é20P­q|¤‘ŽIçƒ]ö©Ú,Þ2G=s2Y40¾ã¡¢Š²÷1íà’6oc“Í^·¶InT³8ÏöÕ¿*M¿Ý"µjä—ØÛ&ÐØè1œT3O½vÂÔv°]ÜÌȱáG9<é v%zó]G‡ÊÉi&0I"¹é`Œå+§ðüI¬Jƒ 3ŠUVˆ!¹«s ‚•!Fx¬Øõ«#÷™Óꦯê¼i²ŸjäGJ¸E4L¥©Ð›>Ç;?;”ŸÆ¨ã3ˆó¹³óøVo”½T”>ƞ·¯¨ëZS§¹”º†êY‰xô^*É9$“ïUL±È°}:³nìFgÞºTc´LœŸSX…m¥]DÄ®ê» {W=yª]ÝnÂ㦠ë<„g“Ö³ž}EÿÕÏoû«þ5Ñ”QÍ?‰–D1ù#b}qV£šK4ýûFñ´¸ÏåXæËR¹û÷èÙìd"øGoHâH[þÚSæ¶Ä´žìé­á†å¼Å“zU±iýéð?Ý®bÔ4µ.å°zß‚üO¦ý¦XÊsŒf·ƒR0škcN-29+r0}ªÜz(#‹•ÿ¾k"ÊíJ|™aìkIo`%G¹­”3rh¸º7K„ü©ãÃrŸùnŸ•E¥8›õ«‘ߣ‰OçUìйÙ\øj~Ó!ü*&ðåÈþ4­U»ÈâJSrØûæfƒœÁ“Ã÷Cû¦©›fµvñ»=«¥{§þõ`ܹ–áÜœäõ®\\T`Žœ+æ™Fki'bäµÏêÏm!Ü0MuÑN°ÄA`2sXzôñË2üîNãM*i„¦Ý[~¤§ìã¹5–µõ0ʈ„`÷¬ð˜¬Íˆ‚Râ¥Å5‡˜ÈêjömÝû3U)8F>Õ«§+OˆËsPR,²àL`S÷ i4®; <º5–ÊeÏœ¼ÿ´+†´$¥±¼hå5Q™ í$Ž„S×S¿ºÓÂ}’ÄœEç.Lî·P=º{WE&—apÙ3r}SG‡-)pãñ*©+ Ó»0-ì·²Ç,3È Ö¶Ó ;ŸýñÞ´ÃQºö§ã¡Å@ÞÉùnÏâµIõ+•®†MíÄ.ñ˜T¨Sé]…´ÀXÄøä­b:œ‰Ôþ¶–̶ÉFTVu²±QL‚YÀ]ÎØõžÝЫº{N½Óî&·+]Þæ±_BÕª©ïUÅÆÛ‰¦Z¹µ´·UxܞTœŠ€^[Är±ï?¨N‡©(Ç”ØöaL:N¦-Ù…\y:²7DO&±9á6 öUîf”üîÇñ¦=ðûÖ’þDv÷ pÐJ>ªkUÉЇÍÔr“Ü×c¡ôh¾•ÈyN:£~U×èùKX³ÇËYb4Hº}KZãìÒ¤?A\gšÇî×_®üúD‡²òk‹Šþ% ˜[¡n†®›V&[“…‘»Ô±ÚÜLp‘»}:kõ‘OgÍüjã¥tz^£%’Ki+(#îŽÕ²ÙŒ§Ê®s“éíhî‰…OBTÖ¥ž›pÁ<‰›ºjι«fZòí ¶„ofÛ¹Ž=fYx¾-*û8’æãŽIÆ݇×òhRQz ÒšFæ®ÚƒmÔ¤¸^YPó»ÑÄלk·\jrOoŠ'bU·„÷«ÚÍókæ“ýs–ÏZÂf/µzãÒ²—3Õ³t’ØŒ6z֎•¥Ë«êÚB g<‘ØIüª ·ÈÃaA=kÓü!:O‡¥¼_*)gRWvÕéŒú·ò¬ªIÂ7EÁ]šzχ¦žXìÌMhAp§^µÌÝi¶ý&ÖD^ÍŒ©üEOª·aÌÇå•ßœêFå<ó˜ñ]M–ª×Ár!94ržôý+?o8ü[£|;œHAžU¿*ް𞱨[-Ŷ›tñ7Ýqý=jNßìÅn#Eòdä?t÷çµOgãmNÆ$…o/V4UDÇz]Ió+£’W‹³!Ô|%­YÚ¼ói—ics»Fp£ÔÔSÆSÃq(S–9â­ë3½Ö,>Æ÷w,„å•ßƒõõ¤º¿ŠÃDHË••×ld(8>¼ÖôÓåfr{Xç!šâ×>Y`¨«–šœ·ä\GcZCUÓc´Eš]învQɬËë›b¶Ç,z:Ò„¥a;K¡­HjÕ¶EcËZI5˝åcý샓ìhŠ&åØ}Î+¶2Òç<•´:`Ò& 09¸»òþR§ð¬K)¬ÞEßpsÈó1^‘e¯xsÈH—M„*Œ…cùž´å'Ñ\ˆÙ½]Ž&Y/íüT(UyëŽkÒæÕ|:-ÝΝÀÎ6(ÍyåôË4òH‘ªbB¯Aì+ƒ.k&¬wá"•Úw2䈻ûU¸B:Väú{¯Ì&Áô¬k•eƒ¶âtU÷iXÆœ”ª»Ö¼PY’¸ó7W#5̨™ºÍ[É’)An«’•w&=kžz4tÁÞåí ³ß­Mö©q÷ª¨¶`ÀäU³ ¬*ÅÁv<(ì=èµÊÏ‘þRzñ]\I²“¸Q\µ´~eÌkŽ¬+²ÃØVsEÄŒ§Â¤·*ç”qL15fÑEm´lâ¥(E!A'µ$†ÈŠÖ‘”MU’çt™ì)f•„ ÿ{µmìÙŸ2%‹æÍM{¥¨-U¶óø֍ ýácÚ“Ðh‚îÚWb¹<Ÿj¥%¼ ð8­ç`j«àЛF+E! ã½L‰É5nP¤€zTA}*“ÔC6Ѷ¤#Ú«ˆ‰…5—1Za^rhÍW˜ØtŽsYÒHL‡â®L¥a§4ÖcZ:^›6§t±/õ>•Òêš%……¢¨KËw5´h9+˜J¼bìp­!¥çÕË…€>ÔŒU˜sXMYØÚ.êäx£Õ ZvÚ’Œûkùm–à2ú‘ùlòyòf1´Ý…T‘šZ¦n^˜5ªŠ½Él³äá¹úÕ¸æQò¶ô5™æH4åg<±ÅkÍЛ :1Ú}ê弑²mrÈýˆ'š¡§º·îÜåMu0ø;P›Nömän‘`mÒEþòõ\cÞ²©Jú¢£;/<Џ’IHõjí+Õû—r©®ÏAÓ|9{dðjwYÝç÷w†LzëøŠæµ=:+}B[h.!¹Ul,‘žzŒÔ{-.S“¹Hkz¢0ÿHcõº¯:êm29b,Äg8à×*tÙ·pŸ‘®¾Ú2ºl@Ž@®jJÚBWOSëZ¤.RO+#Õj;¹u'úßu4š¥¹x¼ÄŒ³AYä°ŒŸQOÙÆJöv®tKª\¿Ü[gú1'ۯɴCô“ÿ­\û\Mk6a#@h’ûPÆýŠûÊ»•f袽£7%Õ'DbmÀêã.lGñoÌÁ2”=·WBÅû¶q2–îêGƒ;y’y‹ àu,}E$RGq[Å:ü¿4ŒÝOÓ°®ÛÉŒr~Ù °EÉêj~·Mtcú¬ûœ¶œnZò/>Y°Ï„Œ“ÈXûWVÞcü±©i…U$ûT`·‰Uv8èE;íwZ\ñÝÛ;¼‘œ€OZçUVjÆôéºpg#¬O­éš„ö׳¼3GóSŠ£%ªª¦;õ4øÃ[N£'°q] f“$Ÿß¨XH:šŸqeÈéM žÕ‘¡Mgç·AR*ÐU¸-­ÀükJ<ŒRæH-sDÌpÓ¾Èþ•Ð­¢ û´Ö„qKÚ”ç^ƒ‘P2ÖÝÌCµeJ˜5JW%¢¤Ÿ,lG¥f„ÉaW¯RGË‚zšÊ67 ýóZÆV3œ[:=³H\P뺄“¾ÎªØÛÉ{Î}*ÚÍ4ß/Jèö¾íŽeï\lJO&œWš’8Ìi†94¸®Y;³¦*Èb¥;gµH gšŸè)r²ÀwŽ)bRFl®XäT!B=jžˆ†µQ‡PiÆ2jh›'æ¦ ›±&Púâ«™XV"¶‰Ãµ°ºÍª†GŠEèèÄTwˆ‚=E9Ü2ÇŠRšµŠTÛÔ±§$£a œóß5n# ™^PÀŽ¸¬{vÛ/´Â¼˜Ëé“P¤ \ë`¶âY!0à0ëV'a¨ß…"¹¨üÕµ1™2‡øIçð­hÑ¿²TgQп8¨ÄMI+Œ[¹ZÊúi¯Ì2Ä#ЊսӶÀ·#S¢¹Af8£ŽdTpßQQ½ÝÝì$Ç(B+ŠTªEFÌ*SnI£Þ Ò`:ô®ËGÑ´kŒFK…B>V„)Á÷¹Ë+Eogƒ’¹Æ?:½wªË`\÷Õ°OåUG©3„º¼c¢éZ[£išÂ^+6ÆéïÏ~5Å©-®Uã8 ó]<·CQI]¢ö,r7¨57Nå$â‰/64þl.¸n~^ƺ¿ ë’Ë ²¹Ãqò¿zâüÕ¥¦O%µìsF`ôœSÜwg«çV‘c¶‚IŠüÌ#RH…>Oj;•R £$ã ¤Òu˜ŒQÜG3@øÆwm Öü~%ÔÈýΣ+ÿÛMßε„S‰…I¸È†ïOK+8 @á£X‘ŽGZ¥;Ão¦Lò6éJ•^~âŽIúÿõëBûW{å| ‡_zãüKtËbÑ+2pHâ²’¶†ð|ÚœËG#0VäƒQ"–SÔãÒ¥ŽÑe/¸õô®“LÒ£:càüïòày©eœ¼cæ?­I™e®94³´%J²’¤Zu³ª¸¿Z9…csL¸‚Ú6ûD+–%rNá´ŒgŽõ—ª÷¡Ì ¢†Ã"ãÛñâ§{Ôû.€†'žõ˜¹-ž:Tó$îUº´7ú‡›‚r8&½·á®Ÿ øvæYÄŒTŽ¯ç^+hQ¯Pm8­{O‡<äðüq 1FIo0žáøV´µw1ªì¬q¿üÞ¿þÖÒ†í2wÇËÿ,ŸÚ}½?*É±× Ý“C-·›+7Í+ž1è>µìš¾¹¡?‡nl®d†à4{M°<³úùÍy ¾š¶Ñ¯\ ãÆ8+[s§Ì÷ØÔ´†Î–ÑùQç% Î¥cêVP¼2‚«‹Ì’ ì FÞ¦¨Ÿ´Dß,ҁŸãÙBntÔ™ÍV*3h#Ðå%NT…éÍlZh‹)v@†µ¼=¦Ç¨Ún“STœP â´'Ó¤³¸HDñM¸dí\cõ®Ø'Øå“Eí'Á×±+'˜Uº3]Rx'JcZýˆyÌ9É,·LUMÄ3ØY¥±‰iÓä­ÈüNw8ö¥>{肝YÈÍð®ËÔ¦Sî Ö5çÂëø˜uPØé•#ú×wªx¤´x­ã(ì0[©Jã¦Öïþ`.¥luã¥$›øî—ÂÎv=RÒnXÞβ&0 14^H!„ÈF@íZ’IsrD“™?t²à†%´K¸Eñ"ܸóê|W$ m‡\dÕ+œ®¡¤%Ô‘ÝF›dõö¨õ³åé.R1^µâ½;Ã6>]BÖH£Þ D‹yßýqëù×”^ÉÑ$yyï[¸§ª2Rîs²m´’6n1T®b ¼ÅoJ¶ýŠÕw·ú…5 ‘Í<ñQ-»ôÍt§Ûó…]ì# O5±w/xfÝO'©Åt#`œV‡`é¹þó]V›¯–L¾^âˆóT•ÇsrƒÖªÞ‚èFò ï]{YÙ8ÈDü+6òÂÔ!!v^æ­SwzÑ„b 2ÌŒvàԞկui1Ú¸ôÒU-ƒŒÖü©&c9°@¤ˆ2Š¼tåÏ W,´F–MÀð½èšqZŽ:½5¸v_AP]úT1[§Ê½1UΞÂBî2kJÌÝ¢$‰Dj¥O Ç‘NïýÚ³,T桲ÉímUÜÕ¦@¢4­ƒ\Òz–‘YÇ^CVfàU 9ªˆ2 ÎáY7ç­Iɬé€gÍmP­0Žõ`ÆXàT‹hO&®ö&Å Œý)Ý…i­¾ÞÔ4&§˜,c=¹_­E´ƒZòEÅP¸]£Š¤î õ©7QTÜ>sI–«å&åv¶h.JƒV¾ÅÑç¹Óî/RíB¼J¤zlSˆqïÒ°æ•‹²¹°–ÜïE2'¨f8%½! ü*ÃÉ$ˆŸâÕhPÅ ¸Ç¸ú÷ªâ¯Ô¨ÂîÇ/q£Éo.Œ G;2§¿¥u:Ü«$ªµHY# u-MTrØZÎÈËû?x&¨­K4’!±lGÕ»K€wÆ8¡½mH›N–FÀUõâ­Ç§J!Úr¥j[ÛÈdm×)Kœ9L´±eµ~8§¥°„nRA©´MÔŠcÈ d9ô¦ŠÃ‚ÅPŽá—ü+ð4íåB§ÊÍL÷†7ÅY‚A'%B·¨§kjDŠ¶v²0R8Ç5ÇJC³u5Úø‘öX‘ÜûW 2Z´‹¹œ†tp+VÀyn²)!…SŽÑÅ_Ž&F*„Ž¢&0©§©ÛjÄWFµ¤(ØáѺþU‹f™PI«ù"5E˜¬ç(Á]²ÒrvHž_GfŒ×³³ãîËåu?Ï}pLYH±§œýiºæx—i—Gïýßj͎ԞMLd¦¹Úq÷M3=ܨ“œd•é}²Ã`YF_w{â¹ é2£}®Td@xÝïô®ö#‚Ó>E\žp3ŠRÑ<ËWbú”ìNK9<Õ{ubzV5yµ Üü£yàtDÜ,Pe>ót'¥(« z&BÊñëíMhʠ⧶¹7{Y(U㥠÷i²Ç'gŠÑSî.aúm¹{¨Ë÷nžÕèšÔšÜZjÚÙÄ-áŠûÇ`{zâ¬m™¯£zšïuyaxþÅs)ßå–SŸÃúV‘ŠqhÎm¦š8k)š&Ùs ;ú–= iÉ$²ZºÅÆ?ŒôÅs“:E”Ùæ|Ù,N?^‹¢j ‡Òeîîd÷±Í î'?Z掚i³Z˜žXhUÑ,áŽØL®²–/Wί¨ ¶·x—˜‡JŸ–æçMCd¢îJ¤|µ=´y±1M+‚Ü15ÜÔb¹{n2ž¤Ò9ÔÝLQÚ$ŠzÆþµ·m}$b»†5r0$Pk–†ÊMÉukkö¨û—íøTñk°I6Ù´ù£Âç*:þ¥9i¡œéÉ;¸ºžÞ¥]~”ÏøK-íð—žÄu¬-Ķ7÷±éÒ·.qº^BþU Ð-„oe©›« ÀHþP?ÞÏé[7Êç¥Éo­n)$(RÄ~‚® ªe¢xŽNNOZòý/U†KtT`$Ï&¯.¹sm.ÒO¦ìÍï£4NËTt^(¶šÞæ5™¢'o ‡§Ö©i1C²G’Õf9À-ŽdÜêA k«† u994ý7UÒ$·&{›”rz( ƞµ.mQڝ‹!ŠÙôçXìR7µsS·ò§eOLV:ïŠp0Tæ±z3Gª55;gTyâfÆk$Is·Ž+©šx¦Ð¢·Œ|ìrÍëTa±PT’M&¬8^Æþ““¥Â§®ÜšåµYg„¬’ºŒñƒ]ÄPF£'`W!¯B"ÔZ0A#ïcÖ†Ÿ#‘i«ØÏKëõû·r~ušÖ §á›ñ§,}ª`ç V r]KqL’=JùÙTrMi6©©e-•|Æ#„NqV´m";­!ê: éuKmB•íá-sr6ÿV‡­a$ 4튽©Û°*69®iIš!KŠŒ¾iÍ&*#€Ãš«$ zÕ¢p*ÄÇ'µ,íÔ d•"H[½HNh݉±UlÕO©©D©CRî¬Ü™I˜@¨dM¢¬³Uiä4&¡3sŠ¥2äÕ·`[T32Ö·‰›2åzƒÒ¯´`¼zŸJ‹Ê_S]Í™ööÂsÄjяO‰—}§ý jµ¥»œ?*ÖŠÖVÇÖ¸'~†êÅFŠKT#̞ªsVôû©mðb‘ÔŸîš™l]¸#5=¦œñË‚8©¾š”‹±G5ã“æ'Ôb¯Å`S•nÕNÀ§Õp ÇJ˝ܾS9´øÛ’à*í¤ mŠ˜*Óòpj¹˜XiVM4ñMžî+uÝ,Š£ÜÖ ÷Œ4Ël…s#z-Tnö%ÙîÉÝÏJÌ–eBC©5Íê>7yò Aõ³´_­Ýš ÌvÌ2s0É>Àd~u³4Tož)¥íJGòÅyî”\Ÿ3¹Ôª4´Fíü— bÙ+qûé?™±áiòºÜMu ܃‘G*§ßÖ´—ÂHòºrçý§fþf¡mhPɪé #’1óÄyVú÷­¡hÆÑ3“mݝŢ(û¸Çµsúü벩r¶Oô®’Úìê*j›MÌ;WœøVY®¤‚óB’_¥rv •Ì)wI)sÉ=j müÍ¡T`ðA

lfEkfëdbÈÞÝ~•n8™jØùxÀ§Ú:«aÇçWVÞ7 µª¥¢[“¬@ØïšÝ×­Ic˜¹T¡9ÇÏ5SE„ä—ûŒF? Þ»‰e‰¸ÍO2LgœK`Ïtv”šélm–m’Aæ+EMoh†|ºã¥nA°ÆѶ´ulG%Î^KwšánŠè»²*üj#M€ä{VÓiñîʀ*TÓãÓšÎUbÊŒ(ÚnR“©¤–’BVfT$äZÓ6Þ_*2+Z‰^U,Ä(jô*[jaØÞÛ麤·ØNB•@Ç'½&¯4÷±FÒEå§Q€=€¦5¦æ&9'8ô­[ˆc“OU’]ÒÕÔ¤Ò±ƒŠ½ÎnÎ[ˆnQ¡Îüñ]L%®.X1ðŽI=Ó·ÔÖ=¥¬‰v¬£4Û¹n§+Ê[åàö©R´µâm½ìRCq8·3u¨¤ýí¼E"TóS íTXÅo¦\ÛŒù³Æ+{OY&Óâ2íM«´`rEE*Ž”œ’.QR\¬«£Ãä±>^­[ÖtÛk†G÷`’ÎÜ»z‘ÐØU¤’8`š¡}4¬ØcÚ¡I¶\â´2áð½ûÙÍ©8&(¸ó1‘“ØW3&–å’YK¤÷5è/«ÝìeËlR±ç¢×¹H,˜Ê|ܲzzÖ—ÐÉ# 9s …xÇAZqÄaxÚO›¹®6››æl ƒÖ•ÀÏ¥d婲‚±^¬WaVè u®vá™®Éc’Ü‘œ‘Rjå}ë÷ºU,Ÿ:¦B‚ycéJíúÊ‘ev†ÅMåy‹…ée‚ŠÃcÄzµ^²‘gçf9éQ8Ù\hÝðìa[»™­´ÚnhnÔ¬9 SÞ¥+J÷kÏ!3À®nïÁú¼"1Ø9¯SͬkÉé¦x}Í…Å»šCþÒ‘UMé^í$0Ì¥ez0ÍbßøOH»ùKŸâˆãôé[Gº¢'Ðò,º2)X†9 ×k¨xæ,µœË:ÿu¾Vÿ æn´»‹GÛqÄÞŒ¸­£8½ŒÜZÜ¢çšsG·®)æ6SÅ*C,ò¬h¬îz(š«ˆªç&­ÚßÜÃ*™€SÁ Î¢žÚâÙÊMÄßÝu þµ¿à»w—]Dhà‚NôãÒ‰4•Á-ODðÆ£5åŠù^²þ¾ä*†úÚ·ÁNçؼ Œ0E ½y÷Ô鶃®'†ÖÕçrJ ÉÀÉ®VÿÆvú…“éÚMµÄ÷—`_/së]8RÏÖ¬Z¬qV5Rz•\f­4·&ÅŠMÂq[;d¬xp;¶+Ê"¸..d™·JÊèªs¸üñ^»â)è7LWq7Â¼VâlÌÆÂ)'–åô…mA^÷"nÖ5ì5™>ÏzdQ»rH¼ØÇ ­‡ž7(1̧k#zz×3jñ¹_´«íÏÌSü«¢º‹Ek4k]q™ã\$3Ûl珩®)ɧ©ªW*¼“xn @äb¬¬Jy¥eª%RêÅ(ñLžgr¬2PvV=å¡—

!'§çH.c=ñGš§¡ÏҦëÒšäFÿ­5È“ïHZåˆçò¦ÁÙM6ctëíQôJ(–Ø纑º£Ú¢iõbjF‰±÷M3ÊcÕOåT¬-F †5:ÝJZÊ>†œ!lô5Z0Ô•nåÏ ÂŸ·Ì¸8äžj%‡æ4(Æàá:–À_‚Ѥ (ÍjÛX2Ɲ¥@ù$Ž+NQÒ³”ÝìZ‰JH7c=©ÔwéSƒ–æ¬Æ úP¥aØ¢°áÁRyy«þH'5Ç´T¹ÅU‡¤òò1NQëS.(¸X®– â¬nÚ1Æ¥Ž”×^)\Ô«jhá]Ùj(Ó' Uè¥ ‚D,Œ§#9«_2aZ§1‚½*œ‘…ozö5b¸58äU+dùA««À©z.0iâ›KH—•â³g•¡äƒŠÔUóDö¢P8zŠLqq#Bœ†´e˜ŸJǹˆZaŽG±¦¢:%`vîjóÏq`+›³¾\5]Y"³r\/b­&&Î3ÆSZT‹eñó‘ë\ߘyÃqïNºs$îç?1'“Uús]V²0l”–‘KæÆ¡.ÜšizV–ƒZšGFªýéË)r…ËßiqÞœ·­žj¾w. CSd;—~ÒrqL. ª¸Å½êl;—)9&‡ŒžUª•BãoãHÓœü£z,ÂäÁÙx½rË|z™uŽAó@”ôTÖ,áø&¬4Ď)rŽåÉOJ©(æ¡7N ¨eºµ´S%²ˆ”æ²æOzIóÒ©ÈTÍ[$fʬئ逸œ8éQùµDšŠEL˜ªéS­`Y:švj,Ò3âÉ· ŠWÀàÔ1µM‘×ó M#Ò«ï'½X-ž¼ÔlªßÃM2l3®I«hс…#¨ì8§íSÕj¹H› ҅犄F½‰9N,MMŠ'òÃã#ñ©VlÔq±ö«ûh¸ [&b8^‡L@|Æ8>Ԑ°ldTÛÙÁ8£™…+`±¦HëUR`­C4Äô©KR®[‘'š²¬zÈŠBõ«Öd>YB*ž‚F„rTr°¨Ëdð1Fr:T”FÏÍHM÷ dP"`äSZRxÌœS7àÐÈ@QÉÉ«°°¬Ø›5r'楍·P:åéÊr:Ӏɡ1“ÃÀ`Š1RŠ‹Œx¥5êx9¦Ð⧍óÅU§«`ÐÀ¼œ°½*ŠËÍJ'¬Ê-¶Ò9ª7¶0]DzDÈö©üÌÒh’(t»U€D‘*¨ôª×>±¸M¯W¿½_I°qVDŠÂ’mÈòø|Y]fÖ7 ߁\›$ª0yÕïš­€½³xö$p+ÊõoÞéîÌcܧ“°p+¢54ÔÆQ9=äg*E7 ÷­ƒ8#‘Q¼(Ç•­9ȱDŒ“H X{PGÊبþÎëÜ|ÈV&€µ>}ª¼×9«Éæ³{”…À=©¬£°¥Ýè8¥"•ÆG´ÒjlóF

%PDF-1.5 %ÐÔÅØ 3 0 obj << /Length 209 /Filter /FlateDecode >> stream xÚmŽ1kÃ0…wÿ ME¢ÚRªØkÒè¦N¥ƒ/ñQçT,5à·¥C¸áqð¾÷ž–†ÕËé¢þRmmõø¢jÖÉÎ(Ãì‰m¤bª1ÒtOÌö읿ºO¤³Xi­yüž@|Øã¯-»u›=~š¿R(žä„Úð9æ)‚ÿ-UªD?;B³ï(tÍ·0QL€tx#¼Â1 Õò9á”㈰Ժ”u7 w琭÷¶[Ñj~ Œ~€Lýõ–œ=R?„+üΪö¶º|Y@ endstream endobj 11 0 obj << /Length 241 /Filter /FlateDecode >> stream xÚmO»NÄ0ìý.í">?.‰CÉKT wˆ"º,¹bÇpâïqn¢8¹˜Ñì̬׈ŠÊüÌŠû‘|Uj!›Êž%•0Mmi-4UººZ\›Ý¨éu äÒ‘Í­–´M•gƔÔuô™9n ƒ×–ÅaN¼0Æ°Á#Þß/lËöâîóÞBÑl-L§ L-âŒî0ŸØ|D¹ƒ¶{ÿÆÑqÑ¡x‘1øsÝíú›«ÃàaìèÃD?‚Oÿzò’šE®ØÛB Îâ¯/¯×cwcÛ¦öº!]𢔒=Ágú͐G~v/^ß endstream endobj 8 0 obj << /Type /XObject /Subtype /Image /Width 585 /Height 390 /BitsPerComponent 8 /Length 25592 /ColorSpace /DeviceRGB /Filter /DCTDecode >> stream ÿØÿàJFIFÿíÒPhotoshop 3.08BIM¶Photoshop 3.08BIM›CHINA-HONGKONG/ORIGINALIPOL VIO BIZ TPX GM1EA9T01D501:rel:d:bm:GF2EA9S19A201720140928A JPEGTOII2/MEDF1.0.0.16P© Tyrone Siu / ReutersZHONGKONGdCHNeChinagHKG101i°A protester throws an umbrella at riot police as fellow demonstrators blocked the main street to the financial Central district outside the government headquarters in Hong KongnREUTERSsX02605xØA protester throws an umbrella at riot police as fellow demonstrators blocked the main street to the financial Central district outside the government headquarters in Hong Kong September 29, 2014. REUTERS/Tyrone SiuzTS/ys‡enÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC $.' ",#(7),01444'9=82<.342ÿÛC 2!!22222222222222222222222222222222222222222222222222ÿÀ†I"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ?ô/ ø™”Ä*Ô‚šE?•JÊzFÇð©*xÎ)Îå¾ì. ±xåƒT» \šqŠÓ·¼+ŽjŒzUïüòÇÔÕÈô‹Î2~5œ’e«ž…ðÛRøš9eDŽâØâ¨ø‘í%¸¹»³¿IÈÎйÃO8õª>wÒMɞy‚ËM‘`†ÈÇ9¬¹t—–gst['ï0äýkŸ“Þò6¾†eÌ…^+6R3ÖºOì5?zsø aðý¿ñH溒2i³Úñ­¤²ÿ8àÿŸZö†Þ!Ñõ[CE¾uŠk¹˜eåH¸ŒcƒÇQý+͇‡ìÇ]çþSÁ¥Z[J’Æ$C•ur>µjªFR¤Ø߉Ÿ£øªâ-%]m«lfݵŽrî=+‹èwŽ/¤ó.ØJäYûâª}=9Ùü¢è8ÓvÕœ¬‹n,íÚæs‘*ƒÐŠHâ’G çé]xšÂ>úbž/ì‡ISðå(y˜Ëhe±1,x–?›î›Û4–¶—¹µ}En VÍå¦~‹R.·j:o?ðÆåÙi°^ǃå‘õ5´²ê ®É àc†éXÑëÖëÑd?…\³Ö#»ŸËD`qœšÆQLÑ;\ÙÜÜ/"œœäœšË“F¹åºUÁà€sZ:†¤Öa—¹[¾k&]yÏH×ó¦£m›DO¡;lj.>lõ©Éáx²fÀT’kÓöTª¯®]…áZÅ2C‡…¬ÇÞyãNÓÇUsõj¦ÚÍÙÿ–ƒò¨W»?òØâ´÷»“xö6âѬa‰£X†êO&hZxÿ—d¬Õnü¼ŸÎ¢mNcÖå¿ïªvbæGR4Ë$ññíO[[DäGüqͨ9ë;ßU¾Ïüµ?W+2;¶Ëÿ<ÇåG™l¿ÇüEp|£¬§ó¦ý¹ñ“O”9ÎìÝZùk4ßÙ¯ü¶JàÍôcø0ßÆ{ÓåsÑá’9âܧ¡®cÆvû­b˜Q±[ú*cG¶?ÞMߟ5KÄ1› ¡x.áNKcÍÍ6¥’&FÚEFx­Œ„¢Š(ž#cÎ8§Ä¿&q’MLĐ0[ѡIJ9츮j––¤[Èþ§uA«[b­?Ây¦HæŒS©§õ Bސ­(¦€¦šu!P ¨P)ӶсYŒÎd'êþuF’¦|0ê «§HÑî†EcèMC©g«]‘0³Ó—øœ©§¯Eò¬;‰.­Û•÷íùÕíþà«Wz¢n‘Ô¬¶kÐ/àµaš8àÊû ㆥ6x»]>.ôÈpâ9¥+Å];•WQ€”J5í½ý›–~Þè®åã# ŽõvÛYð¼z­½ýº˜$Fùá‘Ä߁íJ¼WLš•9š1?´ÈéëKý¨ý~uµâÏønïOš="(äpY^Úb—Õ[¡î¤}¯7óäÿžùÕ:Mujó-Ž»ûJcœ*Šµ+ï¨ü*Ÿ†[}ÅÑbXwÈ<ö¬-ÌrrjÚ¹£–—:VÔ¦gò«ÚUË\É 2ïÀõé\Œ‘ºB’7*Ý tPMÁú W¸);س¬ÃqùÑHå?‰sÒ°›P†‘óõ®æâ5q‚2ï\Þœñ_M(1–wQíJžŒSºØF¾Õ0Þ¡þª@Àcš¿skŠ¹ÀËØ÷­\R"í’ÝH2yR,Á£qÆßcQÑòãñ¨§TŒù|ð9Å*…xA‡Ï_j\¨.ËKrÝp)ëyŒg€ªòBñª–2*U²•¬žå"sg8.N~¼ÑȘîÑ`^œptÞU–ÐÝC—)øW>PO§ø×s :»Ž³’=9úTN " îÍBqg°÷W5ÆÂS'p$W£N1hû«šóI"Ç.§ž£ëS¨äÊO)'÷ß½Fîã’íùÕƒ 3¼G®Þ:ÔÒÙ1E1ÆÒîÏÝí[+a¸+¸Ë´`ôª³<Š¥@?7øV²ÙÈZ<Á´óŽ}ª6Ó.ˆèàýZšKpf>xnOz`w~·H¹*فǭI»Î|¨‡9ëWqY˜þ^[õ¥tØ@Ç9¶eÓn#]è¨1ÔŸJ{i—2M’#òÿ‡ÖŽ`±åoùˆîi*Ž€ ßþǺç揩‡HºäëŠNH,aÊ¡B)qùT*„‘](ÒÞ8‹HëÇ$Ú³­íŒ·Ñ*ôg8ÊàÑé6QyV0G»Ò³5ÿJ_GR¦·6á>‚±õ%ÊnTƒJŽ¥Ìóû½öÒº¶2¨LûÈã æµ|@›u6n̐k[Xͱ”RÒSj6€zž•5ªÌË;WžôÈÆÔ>ðéVmb72¬DI,Ýϵ] fžž›lý£š³ŽqI m·@ð¼æ¬¡6ÓvŽ´óÅÊÐDaM0Ž*b¼b˜Ês@)qJ# î&Œs@†Uk‰ÕNúÔÓ‰Ö°îg,ì3Ò¢NÃ,Ë>þ֡ƥж°v>æ•Ï‡ï-²È¢dõN¿•wR4øC½+´ñÄD,Ê$_^†»Í*Už•A—<Ö5¥5LÒ 7ЋÄCnƒrÙ¯0û׫ëVís¤Ïcs3\Yý?jµ#žcô"«Ó‹W&½Ó½Œ¨ášTwŽ7uŒeÊ©!G©ô¦]F­\hWi}§Må3-Óh"E=U—£èES½‚‹Ø¤U…<÷ÉEùU =1ØW\ícÝêhxJÕ±©—&7¬T:œ6EdhÖéwvbuV\d‚pqí]]´ÐXièÈ÷(¾PL‡°úW ¼ö·K"±V^F:×:wæ7’µ‰õ›4í©¦Kv9\õÐÖÏ„ýžf=ØVUíÔ—Q3JË»Á^µµáZÊB¿ŠRoJÜÇE0ã5Åj7_jq‚0cÈʯÍ××½wˆØú ó«»É Ã(?w uÅE5vTÙìY·'^üsP®ì¤ÜÊ®ÛC°—•ö–'v4À‹«!˜6Py­“[Û©Zçþ>×°±h°‘éô«rØ\=Óí…qŸ¼ÍÅ\·Ò2‡Î˜ýmª¸¬P/ ŒÅ#(\ädò*eŽI#UÔŒñÀ<Ö¬vV–ü¤ °îFãHÓG2HãgælÊ— íÜË–ÖhcêŠ Æ3“]g‡çŠ[ ±Û¬[RA$±õ5„÷67@¸È¢ñ]qZ‘—õÍgQû¥Gs~åY:Ž¦2å\e½©Aµ­v°êWs ýßáY¬R$i<•Â}”œðOOϵ$+n擉dõ?Z…k±½u°ñ¡éá³æŸÎ».$†ÝÈ«Åpï+’G†‰¸`zŠît>āŽFÞµ•tùlÙPµô'¿`–NÛ°=k Þê+-Ñ&Ü qV5†Xìåò™¶c•&¹ëw §Sit<žã؊ʝ+Är–¤úÜ:}¿ï"ŒI‹•p¥yú„VLr³ÆeÞTàîÎH­¶-ý‰‹ ô$`Š ¶‚cgÚ1Á®¨i3)o¡£}%¼k±HXð~´Ëya¸O*;9vþÈ­"w̽öõ–€˜K$gƒ¸b—.}Hchd¸d—î°À>õÒxN›©ÿž¤V#Z³n °“Ôâº_ B"² 9rh›ÐqÜÙ»\ZÈ}×o§Å=¼ +.Ní^…"Fd‚+m"8Už%bÐ”EtsÂÄj…A+ßÖœbÉ'R2qW¼ËqÄK’:ñJ±\N Hð£©=kdˆ½ÈIÜê9íR„'?SCiw“F|•Þ}sùšÛ´Ñí-íãk“ºM ¶æã5\ÈlåõEm!ùG'Ú¹;‹—žfrÇæ<ÖûU#€(AÀ_\šË²Ñ¦¹_2fò!빇'è(RÝæ¹Àô­}+Y¸ÓîI,†Ù`ò¨e°‚Þ2c•É=¸ÍZÒ­t÷‘[P™–%¢}æüqIÆàI’ùo´Qubû·`ƒéFŸ©Er7QÕ[£Vf—aock#é·¦ãNœ‚CóÆã¯à¥O-²L2~WVŽ—"riš}d¨¶qþÍ#Ÿí8Õ8Î5Ž³²?•pCz8«H^F߈­Tc¹‹œ‘¥žÊâI–AзAôp[ÊOÜJ ºÜH¼n_àT£^Q÷mœýMS„*¥Bè´˜ÿ R¾›<±²|ƒpÆqÒªH:Z~mR/‰'ÿŸ1ÿ}QÉL=¥@¶ðëCµœ‰F·E­dIœü¿•DBtP-Óû¢‹ŠÆv]Æqž•£¤[Ÿµ @(ò•oK\Ë+vh¥Ì;X£à¤ Nh¸ÃÖâÎ)‡žÔîO\QŽi{ÒãŠ.!„S{ÓÍ%;€ÆUgN¾½êÞ3I´PÕÀ©a$u¬ëÅÿHVÞ*“[ nw7AR㥀|C(ö§šq^x ŽõbSH§ö¤ëLa©¦ž(&^ÔÂ1Rš‰³š@4ÓH¥9¦“Í+€ÓÅ%)4ÜûQp4.¤ò¥òœ288¤Vä碭]Ëò+JGšG_z¬ITÛ¼t´“m·5t9‘ç—j@õëR\\Iv^GqPh*¿j|dt«s&%`=kŠªØç$¹d8qœ‚GéZ0:\Ûy˜Pë÷€è}ê­Þ#º!ÁØJ’9&ÒÜ«ÄèÌ2®2N i­´&úê$Α©A» Î3‘š«ü§µ>i\>ÜgµDŠs’qÍ&.<èjzsÚ»)7Z@ ãh®F#U`[ ®ÿL-!Ü1…é\Õ–†+ëð¢é20P­q|¤‘ŽIçƒ]ö©Ú,Þ2G=s2Y40¾ã¡¢Š²÷1íà’6oc“Í^·¶InT³8ÏöÕ¿*M¿Ý"µjä—ØÛ&ÐØè1œT3O½vÂÔv°]ÜÌȱáG9<é v%zó]G‡ÊÉi&0I"¹é`Œå+§ðüI¬Jƒ 3ŠUVˆ!¹«s ‚•!Fx¬Øõ«#÷™Óꦯê¼i²ŸjäGJ¸E4L¥©Ð›>Ç;?;”ŸÆ¨ã3ˆó¹³óøVo”½T”>ƞ·¯¨ëZS§¹”º†êY‰xô^*É9$“ïUL±È°}:³nìFgÞºTc´LœŸSX…m¥]DÄ®ê» {W=yª]ÝnÂ㦠ë<„g“Ö³ž}EÿÕÏoû«þ5Ñ”QÍ?‰–D1ù#b}qV£šK4ýûFñ´¸ÏåXæËR¹û÷èÙìd"øGoHâH[þÚSæ¶Ä´žìé­á†å¼Å“zU±iýéð?Ý®bÔ4µ.å°zß‚üO¦ý¦XÊsŒf·ƒR0škcN-29+r0}ªÜz(#‹•ÿ¾k"ÊíJ|™aìkIo`%G¹­”3rh¸º7K„ü©ãÃrŸùnŸ•E¥8›õ«‘ߣ‰OçUìйÙ\øj~Ó!ü*&ðåÈþ4­U»ÈâJSrØûæfƒœÁ“Ã÷Cû¦©›fµvñ»=«¥{§þõ`ܹ–áÜœäõ®\\T`Žœ+æ™Fki'bäµÏêÏm!Ü0MuÑN°ÄA`2sXzôñË2üîNãM*i„¦Ý[~¤§ìã¹5–µõ0ʈ„`÷¬ð˜¬Íˆ‚Râ¥Å5‡˜ÈêjömÝû3U)8F>Õ«§+OˆËsPR,²àL`S÷ i4®; <º5–ÊeÏœ¼ÿ´+†´$¥±¼hå5Q™ í$Ž„S×S¿ºÓÂ}’ÄœEç.Lî·P=º{WE&—apÙ3r}SG‡-)pãñ*©+ Ó»0-ì·²Ç,3È Ö¶Ó ;ŸýñÞ´ÃQºö§ã¡Å@ÞÉùnÏâµIõ+•®†MíÄ.ñ˜T¨Sé]…´ÀXÄøä­b:œ‰Ôþ¶–̶ÉFTVu²±QL‚YÀ]ÎØõžÝЫº{N½Óî&·+]Þæ±_BÕª©ïUÅÆÛ‰¦Z¹µ´·UxܞTœŠ€^[Är±ï?¨N‡©(Ç”ØöaL:N¦-Ù…\y:²7DO&±9á6 öUîf”üîÇñ¦=ðûÖ’þDv÷ pÐJ>ªkUÉЇÍÔr“Ü×c¡ôh¾•ÈyN:£~U×èùKX³ÇËYb4Hº}KZãìÒ¤?A\gšÇî×_®üúD‡²òk‹Šþ% ˜[¡n†®›V&[“…‘»Ô±ÚÜLp‘»}:kõ‘OgÍüjã¥tz^£%’Ki+(#îŽÕ²ÙŒ§Ê®s“éíhî‰…OBTÖ¥ž›pÁ<‰›ºjι«fZòí ¶„ofÛ¹Ž=fYx¾-*û8’æãŽIÆ݇×òhRQz ÒšFæ®ÚƒmÔ¤¸^YPó»ÑÄלk·\jrOoŠ'bU·„÷«ÚÍókæ“ýs–ÏZÂf/µzãÒ²—3Õ³t’ØŒ6z֎•¥Ë«êÚB g<‘ØIüª ·ÈÃaA=kÓü!:O‡¥¼_*)gRWvÕéŒú·ò¬ªIÂ7EÁ]šzχ¦žXìÌMhAp§^µÌÝi¶ý&ÖD^ÍŒ©üEOª·aÌÇå•ßœêFå<ó˜ñ]M–ª×Ár!94ržôý+?o8ü[£|;œHAžU¿*ް𞱨[-Ŷ›tñ7Ýqý=jNßìÅn#Eòdä?t÷çµOgãmNÆ$…o/V4UDÇz]Ió+£’W‹³!Ô|%­YÚ¼ói—ics»Fp£ÔÔSÆSÃq(S–9â­ë3½Ö,>Æ÷w,„å•ßƒõõ¤º¿ŠÃDHË••×ld(8>¼ÖôÓåfr{Xç!šâ×>Y`¨«–šœ·ä\GcZCUÓc´Eš]învQɬËë›b¶Ç,z:Ò„¥a;K¡­HjÕ¶EcËZI5˝åcý샓ìhŠ&åØ}Î+¶2Òç<•´:`Ò& 09¸»òþR§ð¬K)¬ÞEßpsÈó1^‘e¯xsÈH—M„*Œ…cùž´å'Ñ\ˆÙ½]Ž&Y/íüT(UyëŽkÒæÕ|:-ÝΝÀÎ6(ÍyåôË4òH‘ªbB¯Aì+ƒ.k&¬wá"•Úw2䈻ûU¸B:Väú{¯Ì&Áô¬k•eƒ¶âtU÷iXÆœ”ª»Ö¼PY’¸ó7W#5̨™ºÍ[É’)An«’•w&=kžz4tÁÞåí ³ß­Mö©q÷ª¨¶`ÀäU³ ¬*ÅÁv<(ì=èµÊÏ‘þRzñ]\I²“¸Q\µ´~eÌkŽ¬+²ÃØVsEÄŒ§Â¤·*ç”qL15fÑEm´lâ¥(E!A'µ$†ÈŠÖ‘”MU’çt™ì)f•„ ÿ{µmìÙŸ2%‹æÍM{¥¨-U¶óø֍ ýácÚ“Ðh‚îÚWb¹<Ÿj¥%¼ ð8­ç`j«àЛF+E! ã½L‰É5nP¤€zTA}*“ÔC6Ѷ¤#Ú«ˆ‰…5—1Za^rhÍW˜ØtŽsYÒHL‡â®L¥a§4ÖcZ:^›6§t±/õ>•Òêš%……¢¨KËw5´h9+˜J¼bìp­!¥çÕË…€>ÔŒU˜sXMYØÚ.êäx£Õ ZvÚ’Œûkùm–à2ú‘ùlòyòf1´Ý…T‘šZ¦n^˜5ªŠ½Él³äá¹úÕ¸æQò¶ô5™æH4åg<±ÅkÍЛ :1Ú}ê弑²mrÈýˆ'š¡§º·îÜåMu0ø;P›Nömän‘`mÒEþòõ\cÞ²©Jú¢£;/<Џ’IHõjí+Õû—r©®ÏAÓ|9{dðjwYÝç÷w†LzëøŠæµ=:+}B[h.!¹Ul,‘žzŒÔ{-.S“¹Hkz¢0ÿHcõº¯:êm29b,Äg8à×*tÙ·pŸ‘®¾Ú2ºl@Ž@®jJÚBWOSëZ¤.RO+#Õj;¹u'úßu4š¥¹x¼ÄŒ³AYä°ŒŸQOÙÆJöv®tKª\¿Ü[gú1'ۯɴCô“ÿ­\û\Mk6a#@h’ûPÆýŠûÊ»•f袽£7%Õ'DbmÀêã.lGñoÌÁ2”=·WBÅû¶q2–îêGƒ;y’y‹ àu,}E$RGq[Å:ü¿4ŒÝOÓ°®ÛÉŒr~Ù °EÉêj~·Mtcú¬ûœ¶œnZò/>Y°Ï„Œ“ÈXûWVÞcü±©i…U$ûT`·‰Uv8èE;íwZ\ñÝÛ;¼‘œ€OZçUVjÆôéºpg#¬O­éš„ö׳¼3GóSŠ£%ªª¦;õ4øÃ[N£'°q] f“$Ÿß¨XH:šŸqeÈéM žÕ‘¡Mgç·AR*ÐU¸-­ÀükJ<ŒRæH-sDÌpÓ¾Èþ•Ð­¢ û´Ö„qKÚ”ç^ƒ‘P2ÖÝÌCµeJ˜5JW%¢¤Ÿ,lG¥f„ÉaW¯RGË‚zšÊ67 ýóZÆV3œ[:=³H\P뺄“¾ÎªØÛÉ{Î}*ÚÍ4ß/Jèö¾íŽeï\lJO&œWš’8Ìi†94¸®Y;³¦*Èb¥;gµH gšŸè)r²ÀwŽ)bRFl®XäT!B=jžˆ†µQ‡PiÆ2jh›'æ¦ ›±&Púâ«™XV"¶‰Ãµ°ºÍª†GŠEèèÄTwˆ‚=E9Ü2ÇŠRšµŠTÛÔ±§$£a œóß5n# ™^PÀŽ¸¬{vÛ/´Â¼˜Ëé“P¤ \ë`¶âY!0à0ëV'a¨ß…"¹¨üÕµ1™2‡øIçð­hÑ¿²TgQп8¨ÄMI+Œ[¹ZÊúi¯Ì2Ä#ЊսӶÀ·#S¢¹Af8£ŽdTpßQQ½ÝÝì$Ç(B+ŠTªEFÌ*SnI£Þ Ò`:ô®ËGÑ´kŒFK…B>V„)Á÷¹Ë+Eogƒ’¹Æ?:½wªË`\÷Õ°OåUG©3„º¼c¢éZ[£išÂ^+6ÆéïÏ~5Å©-®Uã8 ó]<·CQI]¢ö,r7¨57Nå$â‰/64þl.¸n~^ƺ¿ ë’Ë ²¹Ãqò¿zâüÕ¥¦O%µìsF`ôœSÜwg«çV‘c¶‚IŠüÌ#RH…>Oj;•R £$ã ¤Òu˜ŒQÜG3@øÆwm Öü~%ÔÈýΣ+ÿÛMßε„S‰…I¸È†ïOK+8 @á£X‘ŽGZ¥;Ão¦Lò6éJ•^~âŽIúÿõëBûW{å| ‡_zãüKtËbÑ+2pHâ²’¶†ð|ÚœËG#0VäƒQ"–SÔãÒ¥ŽÑe/¸õô®“LÒ£:càüïòày©eœ¼cæ?­I™e®94³´%J²’¤Zu³ª¸¿Z9…csL¸‚Ú6ûD+–%rNá´ŒgŽõ—ª÷¡Ì ¢†Ã"ãÛñâ§{Ôû.€†'žõ˜¹-ž:Tó$îUº´7ú‡›‚r8&½·á®Ÿ øvæYÄŒTŽ¯ç^+hQ¯Pm8­{O‡<äðüq 1FIo0žáøV´µw1ªì¬q¿üÞ¿þÖÒ†í2wÇËÿ,ŸÚ}½?*É±× Ý“C-·›+7Í+ž1è>µìš¾¹¡?‡nl®d†à4{M°<³úùÍy ¾š¶Ñ¯\ ãÆ8+[s§Ì÷ØÔ´†Î–ÑùQç% Î¥cêVP¼2‚«‹Ì’ ì FÞ¦¨Ÿ´Dß,ҁŸãÙBntÔ™ÍV*3h#Ðå%NT…éÍlZh‹)v@†µ¼=¦Ç¨Ún“STœP â´'Ó¤³¸HDñM¸dí\cõ®Ø'Øå“Eí'Á×±+'˜Uº3]Rx'JcZýˆyÌ9É,·LUMÄ3ØY¥±‰iÓä­ÈüNw8ö¥>{肝YÈÍð®ËÔ¦Sî Ö5çÂëø˜uPØé•#ú×wªx¤´x­ã(ì0[©Jã¦Öïþ`.¥luã¥$›øî—ÂÎv=RÒnXÞβ&0 14^H!„ÈF@íZ’IsrD“™?t²à†%´K¸Eñ"ܸóê|W$ m‡\dÕ+œ®¡¤%Ô‘ÝF›dõö¨õ³åé.R1^µâ½;Ã6>]BÖH£Þ D‹yßýqëù×”^ÉÑ$yyï[¸§ª2Rîs²m´’6n1T®b ¼ÅoJ¶ýŠÕw·ú…5 ‘Í<ñQ-»ôÍt§Ûó…]ì# O5±w/xfÝO'©Åt#`œV‡`é¹þó]V›¯–L¾^âˆóT•ÇsrƒÖªÞ‚èFò ï]{YÙ8ÈDü+6òÂÔ!!v^æ­SwzÑ„b 2ÌŒvàԞկui1Ú¸ôÒU-ƒŒÖü©&c9°@¤ˆ2Š¼tåÏ W,´F–MÀð½èšqZŽ:½5¸v_AP]úT1[§Ê½1UΞÂBî2kJÌÝ¢$‰Dj¥O Ç‘NïýÚ³,T桲ÉímUÜÕ¦@¢4­ƒ\Òz–‘YÇ^CVfàU 9ªˆ2 ÎáY7ç­Iɬé€gÍmP­0Žõ`ÆXàT‹hO&®ö&Å Œý)Ý…i­¾ÞÔ4&§˜,c=¹_­E´ƒZòEÅP¸]£Š¤î õ©7QTÜ>sI–«å&åv¶h.JƒV¾ÅÑç¹Óî/RíB¼J¤zlSˆqïÒ°æ•‹²¹°–ÜïE2'¨f8%½! ü*ÃÉ$ˆŸâÕhPÅ ¸Ç¸ú÷ªâ¯Ô¨ÂîÇ/q£Éo.Œ G;2§¿¥u:Ü«$ªµHY# u-MTrØZÎÈËû?x&¨­K4’!±lGÕ»K€wÆ8¡½mH›N–FÀUõâ­Ç§J!Úr¥j[ÛÈdm×)Kœ9L´±eµ~8§¥°„nRA©´MÔŠcÈ d9ô¦ŠÃ‚ÅPŽá—ü+ð4íåB§ÊÍL÷†7ÅY‚A'%B·¨§kjDŠ¶v²0R8Ç5ÇJC³u5Úø‘öX‘ÜûW 2Z´‹¹œ†tp+VÀyn²)!…SŽÑÅ_Ž&F*„Ž¢&0©§©ÛjÄWFµ¤(ØáѺþU‹f™PI«ù"5E˜¬ç(Á]²ÒrvHž_GfŒ×³³ãîËåu?Ï}pLYH±§œýiºæx—i—Gïýßj͎ԞMLd¦¹Úq÷M3=ܨ“œd•é}²Ã`YF_w{â¹ é2£}®Td@xÝïô®ö#‚Ó>E\žp3ŠRÑ<ËWbú”ìNK9<Õ{ubzV5yµ Üü£yàtDÜ,Pe>ót'¥(« z&BÊñëíMhʠ⧶¹7{Y(U㥠÷i²Ç'gŠÑSî.aúm¹{¨Ë÷nžÕèšÔšÜZjÚÙÄ-áŠûÇ`{zâ¬m™¯£zšïuyaxþÅs)ßå–SŸÃúV‘ŠqhÎm¦š8k)š&Ùs ;ú–= iÉ$²ZºÅÆ?ŒôÅs“:E”Ùæ|Ù,N?^‹¢j ‡Òeîîd÷±Í î'?Z掚i³Z˜žXhUÑ,áŽØL®²–/Wί¨ ¶·x—˜‡JŸ–æçMCd¢îJ¤|µ=´y±1M+‚Ü15ÜÔb¹{n2ž¤Ò9ÔÝLQÚ$ŠzÆþµ·m}$b»†5r0$Pk–†ÊMÉukkö¨û—íøTñk°I6Ù´ù£Âç*:þ¥9i¡œéÉ;¸ºžÞ¥]~”ÏøK-íð—žÄu¬-Ķ7÷±éÒ·.qº^BþU Ð-„oe©›« ÀHþP?ÞÏé[7Êç¥Éo­n)$(RÄ~‚® ªe¢xŽNNOZòý/U†KtT`$Ï&¯.¹sm.ÒO¦ìÍï£4NËTt^(¶šÞæ5™¢'o ‡§Ö©i1C²G’Õf9À-ŽdÜêA k«† u994ý7UÒ$·&{›”rz( ƞµ.mQڝ‹!ŠÙôçXìR7µsS·ò§eOLV:ïŠp0Tæ±z3Gª55;gTyâfÆk$Is·Ž+©šx¦Ð¢·Œ|ìrÍëTa±PT’M&¬8^Æþ““¥Â§®ÜšåµYg„¬’ºŒñƒ]ÄPF£'`W!¯B"ÔZ0A#ïcÖ†Ÿ#‘i«ØÏKëõû·r~ušÖ §á›ñ§,}ª`ç V r]KqL’=JùÙTrMi6©©e-•|Æ#„NqV´m";­!ê: éuKmB•íá-sr6ÿV‡­a$ 4튽©Û°*69®iIš!KŠŒ¾iÍ&*#€Ãš«$ zÕ¢p*ÄÇ'µ,íÔ d•"H[½HNh݉±UlÕO©©D©CRî¬Ü™I˜@¨dM¢¬³Uiä4&¡3sŠ¥2äÕ·`[T32Ö·‰›2åzƒÒ¯´`¼zŸJ‹Ê_S]Í™ööÂsÄjяO‰—}§ý jµ¥»œ?*ÖŠÖVÇÖ¸'~†êÅFŠKT#̞ªsVôû©mðb‘ÔŸîš™l]¸#5=¦œñË‚8©¾š”‹±G5ã“æ'Ôb¯Å`S•nÕNÀ§Õp ÇJ˝ܾS9´øÛ’à*í¤ mŠ˜*Óòpj¹˜XiVM4ñMžî+uÝ,Š£ÜÖ ÷Œ4Ël…s#z-Tnö%ÙîÉÝÏJÌ–eBC©5Íê>7yò Aõ³´_­Ýš ÌvÌ2s0É>Àd~u³4Tož)¥íJGòÅyî”\Ÿ3¹Ôª4´Fíü— bÙ+qûé?™±áiòºÜMu ܃‘G*§ßÖ´—ÂHòºrçý§fþf¡mhPɪé #’1óÄyVú÷­¡hÆÑ3“mݝŢ(û¸Çµsúü벩r¶Oô®’Úìê*j›MÌ;WœøVY®¤‚óB’_¥rv •Ì)wI)sÉ=j müÍ¡T`ðA

Hackers strike defense companies through real-time ad bidding

19 October 2014 - 7:00pm

Invincea has detected hackers using the advanced targeting capabilities of online advertising brokers to target specific defense and aerospace companies.

A major change this year in how online advertisements are sold has been embraced by hackers, who are using advanced ad-targeting capabilities to precisely deliver malware.

Security vendor Invincea said it has detected many instances of people within defense and aerospace companies stumbling across malicious advertisements that are shown only to them, a scheme it calls "Operation DeathClick." A white paper on the scheme will be released Friday.

The cybercriminals are taking advantage of a sea change in the online advertising industry, which has mostly stopped selling "bulk" user impressions and moved to real-time bidding for advertisements that are highly targeted, said Patrick Belcher, director of malware analysis at Invincea, in a webinar presentation Thursday.

Web advertisements are sold to the highest bidder on online exchanges by buyers who can specify who the ad is shown to by IP address range, region, industry vertical or even just by specific corporations.

That has proved advantageous for cybercriminals, who are signing with ad brokers to participate in real-time ad bidding. They have to win a bid for the right to show an ad, but the cost can be as little as US$0.65, Belcher said.

When the bid is won, ads are supplied that redirect visitors to landing pages on legitimate websites that have been hacked. Those landing pages then automatically try to install malware on the victim's computer, he said.

Invincea has detected such harmful landing pages on websites such as the fantasy football site fleaflicker.com, earthlink.com and the conservative commentary site theblaze.com. The landing pages are up for as short as 10 minutes to four hours.

"Those landing pages are stood up and torn down so quickly that nobody in the security industry are able to detect the malicious URL and put it on a blacklist fast enough," Belcher said. "By the time it is, the page is gone."

The malware is modified so frequently that it is hard for security products to detect, he said.

In one example, a person who worked for a defense contractor browsed to the Shootersforum.com, a website for gun enthusiasts. A bogus ad for a gun dealer in Missouri was shown by the exchange OpenX, which automatically redirected to a free hosting site that had an exploit kit.

That kit tried to exploit a vulnerability in Microsoft's Silverlight multimedia program and likely then tries to install a backdoor, which is a program that allows for persistent access to a compromised machine, Belcher said.

Part of the problem comes from advertising companies allowing advertisers to host their own ad content so those companies can gather their own metrics on the ads, Belcher said.

But the ad companies allow those advertisements to automatically redirect visitors elsewhere when viewed, which is relied on by cybercriminals to make their attacks work, he said.

Send news tips and comments to jeremy_kirk@idg.com. Follow me on Twitter: @jeremy_kirk

Data Visualization with JavaScript

19 October 2014 - 7:00pm
Data Visualization with JavaScriptjsDataV.is

HTTP/1.1 200 OK Server: GitHub.com Date: Sat, 18 Oct 2014 19:23:58 GMT Content-Type: text/html; charset=utf-8 Content-Length: 8619 Last-Modified: Sat, 18 Oct 2014 15:10:35 GMT Expires: Sat, 18 Oct 2014 19:33:58 GMT Cache-Control: max-age=600 Vary: Accept-Encoding Accept-Ranges: bytes

It’s getting hard to ignore the importance of data in our lives. Data is critical to the largest social organizations in human history. It can affect even the least consequential of our everyday decisions. And its collection has widespread geopolitical implications. Yet it also seems to be getting easier to ignore the data itself. One estimate suggests that 99.5% of the data our systems collect goes to waste. No one ever analyzes it effectively.

Data visualization is a tool that addresses this gap.

Effective visualizations clarify; they transform collections of abstract artifacts (otherwise known as numbers) into shapes and forms that viewers quickly grasp and understand. The best visualizations, in fact, impart this understanding subconsciously. Viewers comprehend the data immediately—without thinking. Such presentations free the viewer to more fully consider the implications of the data: the stories it tells, the insights it reveals, or even the warnings it offers. That, of course, defines the best kind of communication.

If you’re developing web sites or web applications today, there’s a good chance you have data to communicate, and that data may be begging for a good visualization. But how do you know what kind of visualization is appropriate? And, even more importantly, how do you actually create one? Answers to those very questions are the core of this book. In the chapters that follow, we explore dozens of different visualizations and visualization techniques and tool kits. Each example discusses the appropriateness of the visualization (and suggests possible alternatives) and provides step-by-step instructions for including the visualization in your own web pages.

As the title no doubt makes clear, these examples rely primarily on JavaScript programming. To add the examples to your own sites, you will need basic JavaScript skills and knowledge. For all but the most complex visualizations, however, no advanced skills are necessary. If, for example, your experience includes a bit of jQuery, you’ll be fine. And even the most advanced visualizations include complete step-by-step instructions.

To make the text as clear and readable as possible, these examples generally contain isolated snippets of JavaScript, plus occasional fragments of HTML or CSS. Complete examples are available on GitHub.

Continue reading: Chapter 1: Graphing Data.

Copyright © 2012-2014 by Stephen A. Thomas. All Rights Reserved.

Data Visualization with JavaScriptjsDataV.is

HTTP/1.1 200 OK Server: GitHub.com Date: Sat, 18 Oct 2014 19:23:58 GMT Content-Type: text/html; charset=utf-8 Content-Length: 8619 Last-Modified: Sat, 18 Oct 2014 15:10:35 GMT Expires: Sat, 18 Oct 2014 19:33:58 GMT Cache-Control: max-age=600 Vary: Accept-Encoding Accept-Ranges: bytes

It’s getting hard to ignore the importance of data in our lives. Data is critical to the largest social organizations in human history. It can affect even the least consequential of our everyday decisions. And its collection has widespread geopolitical implications. Yet it also seems to be getting easier to ignore the data itself. One estimate suggests that 99.5% of the data our systems collect goes to waste. No one ever analyzes it effectively.

Data visualization is a tool that addresses this gap.

Effective visualizations clarify; they transform collections of abstract artifacts (otherwise known as numbers) into shapes and forms that viewers quickly grasp and understand. The best visualizations, in fact, impart this understanding subconsciously. Viewers comprehend the data immediately—without thinking. Such presentations free the viewer to more fully consider the implications of the data: the stories it tells, the insights it reveals, or even the warnings it offers. That, of course, defines the best kind of communication.

If you’re developing web sites or web applications today, there’s a good chance you have data to communicate, and that data may be begging for a good visualization. But how do you know what kind of visualization is appropriate? And, even more importantly, how do you actually create one? Answers to those very questions are the core of this book. In the chapters that follow, we explore dozens of different visualizations and visualization techniques and tool kits. Each example discusses the appropriateness of the visualization (and suggests possible alternatives) and provides step-by-step instructions for including the visualization in your own web pages.

As the title no doubt makes clear, these examples rely primarily on JavaScript programming. To add the examples to your own sites, you will need basic JavaScript skills and knowledge. For all but the most complex visualizations, however, no advanced skills are necessary. If, for example, your experience includes a bit of jQuery, you’ll be fine. And even the most advanced visualizations include complete step-by-step instructions.

To make the text as clear and readable as possible, these examples generally contain isolated snippets of JavaScript, plus occasional fragments of HTML or CSS. Complete examples are available on GitHub.

Continue reading: Chapter 1: Graphing Data.

Copyright © 2012-2014 by Stephen A. Thomas. All Rights Reserved.

Jaquard Loom

19 October 2014 - 7:00pm
Jacquard Looms in Masson Mill This portrait of Jacquard was woven in silk on a Jacquard loom and required 24,000 punched cards to create (1839). It was only produced to order. Charles Babbage owned one of these portraits; it inspired him in using perforated cards in his analytical engine.[1] It is in the collection of the Science Museum in London, England.[2]

The Jacquard loom is a mechanical loom, invented by Joseph Marie Jacquard, first demonstrated in 1801, that simplifies the process of manufacturing textiles with such complex patterns as brocade, damask and matelasse.[3][4] The loom was controlled by a "chain of cards", a number of punched cards, laced together into a continuous sequence.[5] Multiple rows of holes were punched on each card, with one complete card corresponding to one row of the design. Several such paper cards, generally white in color, can be seen in the images below. Chains, like the much later paper tape, allowed sequences of any length to be constructed, not limited by the size of a card.

It is based on earlier inventions by the Frenchmen Basile Bouchon (1725), Jean Baptiste Falcon (1728) and Jacques Vaucanson (1740)[6] A static display of a Jacquard loom is the centrepiece of the Musée des Tissus et des Arts décoratifs (fr)[7] in Lyon. Live displays of a Jacquard loom are available at a few private museums around Lyon and also twice a day at La Maison des Canuts, as well as at other locations around the world.

Contents

Principles of operation[edit]

Each position in the card corresponds to a "Bolus" hook, which can either be raised or stopped dependent on whether the hole is punched out of the card or the card is solid. The hook raises or lowers the harness, which carries and guides the warp thread so that the weft will either lie above or below it. The sequence of raised and lowered threads is what creates the pattern. Each hook can be connected to a number of threads, allowing more than one repeat of a pattern. A loom with a 400 hook head might have four threads connected to each hook, resulting in a fabric that is 1600 warp ends wide with four repeats of the weave going across.

The term "Jacquard loom" is a misnomer. It is the "Jacquard head" that adapts to a great many dobby looms that allow the weaving machine to then create the intricate patterns often seen in Jacquard weaving.

Jacquard looms, whilst relatively common in the textile industry, are not as ubiquitous as dobby looms which are usually faster and much cheaper to operate. However, unlike jacquard looms, they are not capable of producing so many different weaves from one warp. Modern jacquard looms are controlled by computers in place of the original punched cards, and can have thousands of hooks.

The threading of a Jacquard loom is so labor-intensive that many looms are threaded only once. Subsequent warps are then tied in to the existing warp with the help of a knotting robot which ties each new thread on individually. Even for a small loom with only a few thousand warp ends the process of re-threading can take days.

Importance in computing[edit]

The Jacquard head used replaceable punched cards to control a sequence of operations. It is considered an important step in the history of computing hardware.[8] The ability to change the pattern of the loom's weave by simply changing cards was an important conceptual precursor to the development of computer programming and data entry. Charles Babbage knew of Jacquard looms and planned to use cards to store programs in his Analytical engine. In the late 19th century, Herman Hollerith took the idea of using punched cards to store information a step further when he created a punched card tabulating machine which he used to input data for the 1890 U.S. Census.

References[edit]
  1. ^ Hyman, Anthony, ed. Science and Reform: Selected Works of Charles Babbage, Cambridge, England: Cambridge University Press, 1989, p. 298.
  2. ^ Delve (2007), p. 99.
  3. ^ Eric Hobsbawm, "The Age of Revolution", (London 1962; repr. 2008), p.45.
  4. ^ . Retrieved 2008-11-21. 
  5. ^ . June 1, 1866. p. 334. 
  6. ^ C. Razy p.120 (1913)
  7. ^ . Museedestissus.com. Retrieved 2013-10-05. 
  8. ^ Essinger, James (2004). Jacquard's Web: How a hand-loom led to the birth of the information age. Oxford: Oxford University Press. ISBN 0-19-280577-0
Sources[edit] Wikimedia Commons has media related to Jacquard looms.
  • Razy, C. (1913). Étude analytique des petits modèles de métiers exposés au musée des tissus. Lyon, France: Musée historique des tissus. 
Weaves Components Tools and techniques Types of looms Weavers Employment practices Mills

This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.

How a lawyer, mechanic, and engineer blew open an auto scandal

19 October 2014 - 7:00am

As the sun was setting on a stormy Georgia day, Brooke Melton was 30 miles outside of Atlanta in her Chevy Cobalt. It was March 10, 2010, her birthday, and the 29-year-old pediatric nurse was on her way to her boyfriend’s to celebrate.

Melton had purchased the white GM Cobalt in 2005, the year the four-cylinder compact first rolled out of factories, and lately it had been giving her trouble. A week earlier the engine had unexpectedly shut off. Melton managed to pull over to the side of the road and restart it, but the incident shook her. She phoned her father, who advised her to bring the car in to the local dealership. So she wouldn’t forget, Melton scribbled a list of the problems in a notebook: “Key locking in the ignition,” she wrote. “Suddenly shutting off while driving and unable to turn vehicle.” Under “strange knocking sound” she underlined “ignition problems.” Mechanics at the dealership assured her nothing was wrong, and after cleaning the fuel injection gave Melton back her car a few days later with a clean bill of health.

As dusk bled into darkness early the next evening, she was driving north over a stick-straight section of Highway 9 at 58 mph when it happened again. The Cobalt’s engine shut off and the lights inside and outside the car dimmed. Melton hit the brakes, but no power from the engine meant no anti-lock brakes and no power steering. The car fell into a skid. Tires squealing, the Cobalt’s back end fishtailed, coming up on her left. Melton instinctively spun the wheel counterclockwise.

Three and a half seconds after the engine quit, Melton was the reluctant driver’s seat passenger of a car hydroplaning sideways across the centerline. In the southbound late, bearing down at highway speed, was a gray Ford Focus driven by a 26-year-old man from nearby Acworth, GA, his two-year-old daughter strapped in the back.

The Focus plowed into the passenger side of Melton’s Cobalt: 3,000 pounds of steel, glass, plastic, and human smashing into three 3,000 pounds of steel, glass, plastic, and human. While Brooke’s lap belt glued her waist to the seat, her shoulder harness went slack the instant the engine shut off. As the side of her car caved in, Melton’s torso, neck, and head whipped violently to the right, the force equivalent to falling from the 16th floor of a building. The Cobalt spun around and was heaved 15 feet down a hill, ending up backward in a creek swollen with rainwater. Rescuers found Melton slumped over the steering wheel, her body submerged up to her shoulders.

Brooke Melton was not the first to crash her GM car after the engine stalled. Over the course of a decade, dozens of people died and scores more were injured on American roads. Four months earlier, Hasaya Chansuthus was heading home to Nashville in her 2006 Cobalt when she sideswiped another car, her engine shut off and the Cobalt raced off the highway. She was killed when her head struck the steering wheel. In 2009, an 11-month old baby was paralyzed and his grandmother and aunt were killed in Pennsylvania after the Cobalt’s engine turned off without warning and was hit by another car. Earlier that year, 81-year-old Marie Sachse lost control of her 2004 Saturn Ion outside of St. Louis and died eight hours later from internal injuries. In 2006, 18-year-old Natasha Weigel was a few miles from home in eastern Wisconsin when the engine quit and the Cobalt shot off the highway, killing Weigel and another teenager.

Then there was the tragic story of Candice Anderson, who was motoring over a quiet Texas road in 2005 with her boyfriend when the engine stalled and she lost control of her Saturn Ion. Her boyfriend died in the accident and police, pointing to skid marks that indicated that she hadn’t attempted evasive maneuvers, charged Anderson, who suffered broken limbs and internal injuries in the crash, with intoxication manslaughter even though a blood test came back mostly negative (there were trace amounts of an anti-depressant). Three years later, Anderson avoided jail by pleading guilty to the lesser charge of criminally negligent homicide and paying a fine.

Countless articles have been written about General Motors and its massive recalls earlier this year. What hasn’t been fully told is how GM might have gotten away with multiple counts of consumercide were it not for the efforts of three men: a Georgia lawyer, a Mississippi mechanic, and a Florida engineer.

Working together, they unraveled the mystery of why Brooke Melton and scores of others suffered fatal or otherwise catastrophic accidents after their vehicles shut down without warning. 

What follows is their story.

Beth Melton answered the phone. On the other end of the line was a doctor, who told Beth that her daughter Brooke had been in a car accident. Brooke’s neck was broken and she suffered severe internal injuries. It was unlikely she would survive.

“I kept thinking ‘it’s her birthday,’” Beth Melton said later. “‘This can’t happen… It’s supposed to be a happy day.’”

By the time Beth and her husband Ken got to the hospital, Brooke was gone.

Ken bent down to kiss his daughter’s forehead. He felt a piece of him had died along with her. Overcome with grief, he was also furious. Brooke would never lose control on a road she had driven thousands of times. She had told him about the problems with her Cobalt. If not Brooke’s fault, it had to be the car.

He whispered in her ear: “I will vindicate you.”

Ten months after the Meltons buried their daughter an insurance adjuster contacted them, concerned that the driver of the other car might sue Brooke’s estate. He recommended they confer with an attorney, and gave them a name: Lance Cooper from nearby Marietta, Georgia.

During their initial February 2011 meeting in Cooper’s office, the Meltons produced a recall notice relating to a defect in the Cobalt’s power steering that had arrived in the mail after Brooke died. Despite the conclusions of the police accident report, which claimed that Brooke had been driving too fast for the road conditions and lost control when she hydroplaned over a sheet of water, the Meltons were adamant that the fault lie with the car.

Cooper, 51, believed this was possible. Two decades earlier, fresh out of Emory Law School, Cooper had taken on his first product liability case, involving a Ford Bronco II. A cultural touchstone, the Bronco II was not only infamous for ferrying a fleeing O.J. Simpson as a battalion of police cars and news helicopters gave chase on national television, it also had a woeful safety record. Prone to rollovers, the Bronco II was so unstable that a 1989 Consumer Reports rated the car’s handling as “poor” in a test that simulated rapid lane changes and urged its readers to stay away. The Institute of Highway Safety called it the most deadly SUV on the road. The Bronco II was so dangerous that federal accident statistics reveal that 1 in 500 Ford Bronco IIs ever manufactured has rolled over and killed at least one person in the car.

“I kept thinking ‘it’s her birthday. This can’t happen… It’s supposed to be a happy day.’”

Despite the Bronco II’s tipsy reputation and woeful safety record, it was never recalled for stability reasons, and Ford opted not to redesign the SUV from the ground up. Instead the automaker instituted mostly cosmetic changes, perhaps the biggest being the name, which changed from Bronco II to the Explorer. To shave costs Ford manufactured the vehicles in the same factory and on the same too-narrow assembly lines as the Bronco. The Explorer was marginally better from a rollover perspective. Only 1 in every 2700 Explorers manufactured between 1991 and 2000 rolled over and killed someone in the car. Yet the Explorer remained top-heavy, its roof so weak that if you flipped one upside down and lowered it to the ground, it could cave in under its own weight.

While Ford banned its own drivers from performing stability tests after an Explorer rolled over on a test track, the company sold millions to an unsuspecting public. Cooper considered himself well-educated and informed, but until his first Bronco II case it had never occurred to him that the U.S. government would allow a dangerously unsafe vehicle to remain on America’s roads for almost 10 years.

“The Bronco II litigation opened my eyes,” Cooper says. Ford “had options to fix the stability problems and chose not to because of the cost. As a result, this unstable vehicle was sold to the public and there were literally thousands of rollovers.”

Brooke Melton scribbled a list of the problems with her Chevy Cobalt in a notebook

After Cooper settled with Ford, more accident cases came his way. Cooper handled Chrysler minivan “Liftgate” lawsuits involving a weak latch in the back that could pop open after impact at speeds under 20 mph, ultimately killing 41 people, mostly children, and sparred with tire companies. He litigated pickup truck roof crush cases and faulty seatbelts. But he didn’t always win. In the mid-1990s Cooper took his lumps on his first GM case, a minor accident that Cooper says caused the driver to lose control, resulting in a Chevy Blazer rolling over. Jurors bought General Motors’ defense: The driver caused the accident, and if the car went out of control it wasn’t a stability problem.

“Up until then, we’d been successful,” Cooper says. “It made me more careful in the cases we took.”

He also concluded that federal safety standards governing automobiles were woefully inadequate. Then again, “it’s the federal government,” he says, “so what do you expect?” Those staffing the National Highway Traffic and Safety Administration (NHTSA) are “well-intentioned, well-qualified people, but they’re usually underfunded and more often than not at the mercy of the manufacturers.”

Which is why he views the civil jury system as critical. Although attorneys are often justly lampooned, litigation has been more effective at shaping responsible business practices than government. It’s why trucks beep when they back up and farm machinery comes equipped with safety guards, why asbestos no longer poisons homes, schools and workplaces, and fast-food restaurants, aware of their super-sized liability, convinced meat packagers to clean up processing plants. When juries speak, Corporate America listens.

Of course, it’s hard to think of trial lawyers as brave foot soldiers in the war against corporate malfeasance. More often they are perceived as corrupt, dishonest, greedy, heartless hypocrites, ambulance chasers who are not only a drain on the economy but may be a threat to national security. Is it a coincidence that a majority of United States Senators list their occupation as attorney? Clad in $3,000 suits, some trial lawyers jet around in private planes, a hundred times richer than any judge. The public is convinced they cry crocodile tears for their crippled clients while gnawing on upwards of 40 percent of the take (plus expenses).

Still, as the old saying goes, everybody hates lawyers, except his own. What’s more, an attorney like Cooper works on contingency and is highly motivated since he only gets paid if he’s successful. If he loses, he gets nothing. He shoulders the risk of developing a case that can run anywhere from hundreds of thousands to millions of dollars and take years to resolve. It’s a sad fact that in the absence of effective government oversight trial lawyers like Cooper have become self-appointed national auto safety czars.

And so it was with Brooke Melton’s case. But before any of this could happen, Cooper needed to find an expert to find out why Brooke Melton’s car had crashed.

Charlie Miller has been a grease monkey for almost his entire life. Born in Tippo, a tiny town in the heart of the Mississippi Delta, Miller overhauled his first engine when he was 12. He put himself through a local college working as a mechanic while supporting an addiction to drag racing and after he graduated he become a professional hot rod driver. In 1974 he opened an auto repair shop in Merigold, but it was 15 years before he was asked to offer an expert opinion, and only because of happenstance. A member of his race team’s pit crew crashed a Ford Bronco into a ditch and the vehicle caught fire. The crewmate escaped the car and toppled into the ditch, where lighted gasoline poured into the water, burning his leg off and part of his hand.

While the man recuperated in a hospital, a friend of his — an attorney — retained a fuel systems expert from California to inspect the charred Bronco corpse for a possible lawsuit against Ford. The lawyer asked Miller to tag along, because anything he could contribute could help save their friend money. The out-of-town expert analyzed the fuel system and concluded that the carburetor overflowed and the needle valve stuck. This, he ventured, allowed the fuel to spurt out.

“Charlie,” the attorney asked, “is that what you think happened?”

“Well,” Miller replied, “not really.” He thought it was more likely a design flaw. Ford had routed the Bronco’s plastic fuel line underneath the vehicle, where it could easily get cut. Miller believed the gas leak originated from underneath the driver’s seat.

“Show me,” the lawyer said.

Miller did. There it was.

“Get the cameras back out,” the lawyer said. “We got to re-film.”

After that, insurance companies called, then plaintiffs’ attorneys whose cases Miller had either aided or eviscerated. Over the years Miller has investigated hundreds of car and truck carcasses, and never knew what he’d find until he dug into a car’s mechanicals. In his experience crashes could be caused by any number of things — driver error, incomplete or incompetent maintenance, poor design, a faulty part, or just plain bad luck. Then came a December 2011 phone call from Lance Cooper, who got his name from a fellow attorney.

Cooper asked Miller to travel to Atlanta to conduct a thorough mechanical inspection of Brooke Melton’s car. When Miller arrived, he encountered one hell of a wreck. The Cobalt looked as if it had been tossed into a huge trash compacter that didn’t get to finish the job. The passenger side and roof were caved in, the front wheel pointed inward while the rear wheel jutted out, white paint was badly scraped, and the back fender hung off the rear like a tail that had been attached in the wrong place. Cooper had filled Miller in on the basic outline of the case. He knew what had happened to Brooke Melton, not that he allowed himself to think about it. He had a job to do.

Once he photographed the car from a variety of angles, Miller got down to business, plugging a diagnostic computer under the dash to determine what was and wasn’t working. He wanted to see if the Cobalt’s wiring had been damaged in the accident. It hadn’t. He checked the engine control module. It was fine. Then he turned to the body control module, a small computer that handles the electric windows, locks, defroster, and heater. It was OK, too. He looked at the antilock brakes, which were completely functional. The front airbag checked out, too. It had not deployed in the crash, but this wasn’t a head-on collision, and Brooke’s Cobalt didn’t come with side air bags. The only module Miller couldn’t access controlled the power steering. Still, both of its power sources were available, and the electric power steering module had voltage getting to it. Despite the recall notice Cooper shared with him, Miller didn’t believe power steering was to blame.

He knew what had happened to Brooke Melton, not that he allowed himself to think about it. He had a job to do.

Upon completing his baseline diagnostics, Miller dug up a copy of Brooke’s handwritten note. Two entries caught his eye: “Key locking in the ignition” and “Suddenly shutting off while driving, and unable to turn vehicle.”

That’s not right, Miller thought. Older cars were equipped with hydraulic assist power steering, so if the engine went dead, it became hard to turn. Not so with newer makes like the Cobalt, which came equipped with electric power steering. Whether the engine was running or not shouldn’t make any difference.

He reread the note. It was, he says, as if Brooke were sending him “a special message” from the grave. Something must have cut off the 12 volts to the system. Pawing through paperwork he found a printout of the data downloaded from the Cobalt’s black box. Virtually all new cars have black boxes, as do many earlier models, which automakers rely on to assess vehicle performance but can also identify safety problems. When Miller started the engine with the ignition switch in the ‘on’ position, however, everything worked fine.

The information captured by the “black box” showed how long before the crash the engine shut off.

One key piece of data involved the car’s speed and the engine’s rpms in the moments before the crash. Five seconds before the accident, the engine was turning at 2,048 rpms and the car was traveling at 58 mph. Four seconds before, the rpms were down to 1984 rpms while the speed held constant at 58 mph. Three seconds before the collision the car’s speed and engine rpms registered zero.

“It’s impossible for a vehicle to go from 58 to zero in one second, and also impossible for an engine to go from 1,984 rpm to zero in one second,” Miller says. “Typically, in a case like this, we see the rpm just slowly diminish. By this going to zero, this told me, as a mechanic, that the reporting status of the powertrain control module — that’s the module that reports rpm and mile per hour — had lost power.”

It was conceivable that something had disrupted the wiring harness. If Brooke had run over something hard and sharp, for instance, it could have shot into the car’s undercarriage and sliced a wire. If that were the case, however, Miller wouldn’t have been able to access that module; it would have been dead. With power put to it, all he had to do was flick the ignition switch to the ‘on’ position and everything worked perfectly. As he thought about it, the only thing that could have interrupted the power was the ignition switch, which must have turned off on its own accord.

Why would that be? When Miller rotated the switch he noted how easy it was to move. It didn’t feel like other ignition switches he had handled. It was like a ballpoint pen with too weak a spring. This lack of springiness, he deduced, could have allowed the ignition switch to jump out of the ‘on’ position with very little pressure.

He had isolated a potential culprit in the form of a defective part, but as far as he could tell it might be nothing more than a single bad ignition switch, a one-off. If 99 percent of 1 million parts a company manufactured were good, that meant 10,000 were bad. Brooke Melton could have gotten one of these. It could be that she was simply tragically unlucky.

Returning to Mississippi, Miller trekked to a nearby salvage yard, forked over $80 for a steering column from a 2005 Cobalt, and extracted the ignition switch. It looked “very similar to Miss Melton’s,” Miller says, meaning it also lacked torque. At his local GM dealer he purchased a new ignition switch for that same 2005 Cobalt. It also appeared identical to the two other AC Delco switches down to the part number (10392423). But when he played with it he found that the new switch possessed significantly more springiness.

To measure the torque would require ingenuity, since there existed no off-the-shelf tool for this, but Miller was an able improviser. He scrounged up his Bass Pro Shops fish scale and hooked it to the ignition key to weigh the force required to turn the key ‘off.’ After trying it several times on the switch from the salvage yard, he swapped it out of the steering column with the new part, which required twice the force to move the switch from the ‘on’ position. Miller snatched an old screwdriver he had ground into a makeshift tool to manually flip the switch on and off. Just as he suspected, the new switch was much harder to turn.

This gave Miller pause. While the ignition switches were manufactured six years apart, GM had given no indication that it had reengineered the part. If it had, the automaker would have stamped it with a new number. Given what he knew thus far, Miller was now sure the defect went beyond Brooke’s car. He thought it was conceivable a bad batch of parts had escaped from the factory. If so, other drivers — Miller didn’t know how many – could be at risk.

Given the tools at his disposal in his garage, Miller had taken his investigation as far as he could. To learn more, he would need to x-ray the ignition switch from Brooke Melton’s car. Lance Cooper would have to sign off on it and GM’s representatives would have to agree with the testing protocol and be present to maintain the chain of custody and ensure the integrity of the evidence.

This would take time to orchestrate. Automakers are notorious for stretching out litigation. The strategy serves several purposes. The longer it takes, the more it weakens plaintiffs’ resolve and bleeds attorneys, who must front the costs of developing a lawsuit. It also means that plaintiffs sometimes die waiting for their cases to make it to trial. This also benefits automakers, since death cases cost far less than accident settlements, which take into account lost wages over a remaining lifetime plus the cost of providing lifelong medical care.

Indeed, a compensation expert retained by GM valued a deceased 17-year-old student at $2.2 million while a dead married 25-year-old father of two earning $46,000 a year was worth about $4 million. (If that same married father of two earned more, say, $75,000, he would be eligible for $5.1 million). Contrast these proposed payouts with those of a married 40-year-old paraplegic — GM would be willing to offer $6.6 million – and a 10-year-old paraplegic, who GM estimated could receive $7.8 million.

Miller wasn’t surprised it took seven months before everyone could assemble at his garage to witness his sending off Brooke Melton’s ignition switch to the lab. Unfortunately, the x-rays didn’t reveal much. Miller couldn’t see a break in the spring or damage to the unit.

“Basically,” he told me, “what it told me was there shouldn’t be anything wrong with this switch from a physical failure standpoint.”

There was only one thing left to do: take the ignition switch apart and examine its internal components.

For this, Miller would need help.

McSwain Engineering of Pensacola, Florida is in the business of finding out ‘why.’ The firm’s 40 engineers, experts in failure analysis, comb through the wreckage of planes, helicopters, cars, trucks, even pipelines to figure out what happened. When TWA Flight 800 blew up off the coast of New York in 1996, killing the 230 passengers onboard, a McSwain investigation tamped down rumors of a missile strike by revealing that the fuel tank ignited. McSwain also conjured many of the fixes for the Boeing 737, which over the years has had a spate of mechanical and design problems. While the majority of McSwain’s caseload involves aviation, it has conducted hundreds of vehicle investigations, of which Charlie Miller has referred more than a dozen.

In October 2012, two and a half years after Brooke Melton’s crash, Miller traveled to Pensacola to meet with Lance Cooper and McSwain engineer Mark Hood. Toting Brooke Melton’s ignition switch assembly, Miller bore other gifts, too, in the form of damning GM paperwork. Wondering if GM had issued any recalls and service advisories or bulletins for ignition-related problems, he had accessed a database that mechanics subscribe to for repair information, parts catalogs, and online tools to help mechanics estimate labor and materials costs. It didn’t him take long to locate a technical bulletin relating to an ignition problem that GM sent to dealers in 2006, a year after the Cobalt debuted in showrooms.

Dated Oct. 25, 2006, the curiously worded “Bulletin #05-02-35-007A: ‘Information on Inadvertent Turning of Key Cylinder, Loss of Electrical System and No DTCs,’” covered seven GM makes and models — the Pontiac G5, Pursuit, and Solstice, Saturn Ion and Sky, and Chevy HHR and Cobalt. It seemed to blame drivers for “inadvertently turn[ing] off the ignition due to low ignition key torque/effort.” GM singled out “short” drivers, as well as those who possessed a “large and/or heavy key chain,” whose “knee would contact the key chain while the vehicle was turning and the steering column was adjusted all the way down.” This affected short drivers, the advisory explained, because they were more likely to “have the seat positioned closer to the steering column.”

GM’s fix involved filling in the slot where drivers could hang extra keys, laminated ID cards, and the like.

Miller didn’t know how many short people in America drove GM cars but he recognized a serious design flaw. The bulletin even referenced the part’s “low ignition key torque/effort.” Its engineers must have signed off on the spring’s tension inside the ignition switch, and they were the ones who decided how close the seat could come to the steering column. Now a whole segment of the driving public faced the risk of the engine shutting off simply because of their God-given height. But that was only part of it. If a knee brushing a key chain was enough force to shut off an engine, so could hitting a pothole, running over road debris, or a minor fender bender. He wondered what fix GM would offer to fix that.

It quickly dawned on him the automaker didn’t plan to fix anything. Instead, GM instructed dealers to advise customers complaining of unexpected engine shutdowns to remove “unessential items from their key chain,” and provided a free insert for the key ring to prevent users from adding additional keys. “As a result,” the bulletin read, “the key ring cannot move up and down in the slot any longer – it can only rotate on the hole.” GM threw in a replacement key that didn’t jut out as far as the original, so that driver’s knees would be less likely to jostle the keys when they were in the ignition. Per recipient, these solutions, if they can be called that, ran GM under a dollar – less than the cost of a child’s birthday goody bag.

Continuing to dig, Miller tracked down another technical service bulletin in the March 2012 issue of MOTOR, a trade publication. In the section “Service Slants” the magazine compiled technical bulletins from manufacturers. One from GM addressed ignition keys that were hard to turn and could get stuck, a problem the automaker attributed to the lock cylinder. In her note, Brooke Melton had mentioned this very problem. The fix required installation of a redesigned lock cylinder, and was intended for the same cars listed in the other technical service advisory.

Miller wondered if GM was attempting to cover up the ignition switch’s low-torque problem by surreptitiously changing parts. With the tools and techniques available in McSwain’s spic-n-span lab, which housed electron microscopes, 3-D printers, and a dizzying array of special tools, he was confident that he and Mark Hood, who Miller had worked with on several other cases, could reverse engineer the ignition switch to find out what went wrong.

Even as a child, Mark Hood, now in his 50s, had a knack for taking things apart and being able to put them back together. After graduating from Auburn University in 1985 with a bachelor’s degree in materials engineering, he worked at the Naval Aviation Depot in Pensacola, where he tested parts used in the Navy Marine Corps. helicopter fleet, performing aircraft component failure analyses, accident investigation, materials processing, and nondestructive testing. Eventually he was promoted to Head of the Metallic Materials Engineering Branch before moving to a maker of automotive castings, working in the nondestructive testing program until joining McSwain in 1995.

GM had switched the switches but never told anyone, leaving millions of unsafe cars on the road.

The first task that Hood and Miller undertook in the McSwain lab was to confirm Miller’s torque measurements for the new ignition switch versus an “exemplar” from a 2005 Cobalt. Hood’s tools were a far cry from the simple fish scale that Miller relied on for his measurements. After constructing a fixture so that he could mount the ignition switch assembly and turn it on, he used another tool to measure and record the force required to turn the key. He arrived at the same conclusion: the old switch measured about half the torque of the newer switch.

“When you’re doubling the force, to me, from an engineering perspective, that’s significant,” Hood says.

Then Hood calculated the torque on the switch from Brooke Melton’s Cobalt. First he looked at the amount of force required to physically move the switch from one click position to another, then measured it electronically to spot any variation. There wasn’t. He and Miller built a light box so they could see, electrically, when the switch changed positions. All of this confirmed that there was a significant difference in torque between switches from 2005 and the newer ones. When Hood replaced Melton’s ignition switch with a newer, store-bought switch, the new part worked much better.

From here, Hood, over several months, collected steering columns with ignition switches from salvage yards and GM dealers — three from 2005 Cobalts, two from 2006, 2007, and 2008, and eight newer switches (post-2009). Hood also scrounged up switches from Saturn Ions, which were also listed on the technical service advisory that Miller found. Like other automakers, GM used the same part across other lines of cars. And sure enough, Hood found that the switch in the Ion was identical to the one in the Cobalt, although it was stamped with a different number.

Now it was time to cut into these switches to see how they worked. At McSwain, Hood had a machine shop and a capable machinist at his disposal. They relied on a precise technique to cut a half-inch by half-inch square into the side of a 2005 exemplar switch, because Hood didn’t want to do anything that could alter its inner workings. Peering inside at the “detent” plunger, he could see how it interacted with the plate inside the housing. Hood found that it took very little force to induce the switch to turn on and off. Then he took Brooke Melton’s switch apart and measured the components inside, particularly the spring force on the plunger. It was exactly the same.

Comparing the 2005 switches to those from 2006, 2007, 2008 and beyond, Hood noted significant differences. The springs in the newer switches (manufactured after 2008) were not only springier, they were longer, and so were the tubes holding them.

GM had switched the switches but never told anyone, leaving millions of unsafe cars on the road. Then someone or somebodies at the company tried to cover it up.

Now that attorney Lance Cooper knew what to look for, he filed a revised complaint almost three years to the day after Brooke Melton died. He accused GM of negligence in designing, testing, and manufacturing, as well as failing to warn consumers. Months earlier, Cooper had begun papering the auto company’s attorneys with requests for information on ignition switches, including any and all lawsuits and documents relating to the modified key in the service advisory. GM responded in January 2013 with a heap of material but objected to several discovery requests, such as drawings of the original switch and any revisions, until a judge ordered the carmaker to hand over “all responsive documents and materials.”

Cooper targeted 15 engineers to question, and their answers helped him fill in key pieces of the puzzle. In one deposition, GM’s head switch engineer on the Cobalt, Raymond DeGiorgio, admitted that he recognized differences between the original and replacement switches but couldn’t explain why it had been changed without GM or Delphi, the parts maker, modifying the identification number. In further testimony, Cooper learned of a GM engineer who had experienced the ignition shutdown problem during a test drive in 2004. Shortly after, in 2005, GM’s own engineers concluded there was a problem with the switch.

GM changed the design of the ignition switch but kept the same part number.

Perhaps the most damning testimony came from Gary Altman, GM’s program engineering manager for the Cobalt in 2004 and 2005. When Cooper asked if GM had “made a business decision not to fix this problem” then five months later sold Brooke Melton “a vehicle with the problem,” Altman replied, “That is what happened, yes.”

Three months later, GM and the Meltons settled for a reported $5 million. GM, Cooper says, never did produce all the documents the judge ordered.

Brooke Melton needn’t have died that night. She was killed by a corporation’s callous disregard for the safety of its customers, made worse by a regulatory agency reluctant to regulate. At least 26 others perished, and scores more were injured, and these numbers will almost certainly grow. Reuters, after sifting through government accident data, estimated that 74 people have died in crashes that reflect “key similarities.” Thus far, General Motor’s victim fund has received 1,330 filings seeking compensation, including 165 from families of people killed in GM cars.

At General Motors, the problems go back to the fall of 2002, when Ray DeGiorgio, an engineer who had been with the company for 23 years, made a fateful decision: He approved a switch that fell well below GM’s own specifications, specifically as it related to torque.

Evidence suggests he knew full well what he was doing. Earlier that year, an engineer from GM’s part supplier – Delphi — had emailed DeGiorgio, informing him that the torque in the switch was insufficient. Delphi could increase it but this would risk other problems, including premature wear as well as potentially affect the switch’s electrical functions. The cost would be “nominal” but would take time to create, test, and validate the new design.

Faced with a deadline, DeGiorgio replied: “If increasing” the torque “will destroy the switch than (sic) do nothing. Maintain present course. Under no circumstances do we want to compromise the electrical performance of the switch.”

He signed the email “Ray (tired of the switch from hell) DeGiorgio.”

Email exchange between a Delphi engineer and Raymond DeGiorgio.

By this time, DeGiorgio had been working on the switch since 1999, and had encountered a multiplicity of challenges. The prototype was so glitchy its entire electrical system had to be overhauled. Then there was its low-torque, which DeGiorgio erroneously assumed wouldn’t harm a car’s performance. After the switch was put into production an entirely different complication surfaced. Complaints flooded GM when cars wouldn’t start in cold weather – an embarrassment for a company from Detroit.

Nevertheless, the ignition switch became standard equipment in the Saturn Ion, Chevy Cobalt, and other GM makes and models. It was a problem from before day one when GM employees, members of the automotive press, and customers discovered the engine would stall if they knocked the ignition keychain with a knee or drove over rough terrain.

A New York Times auto reviewer in June 2005 described his wife’s frightening Chevy Cobalt experience: “She was driving on a freeway when the car ‘just went dead,’ in her words. She recalled bumping her knee against the steering column just before the car shut off.” He brought the car into his local GM dealership, where mechanics found nothing wrong. Then he searched for other complaints and found a newspaper review dated two weeks earlier from The Daily Item of Sunbury, Pa: The reviewer, Gary Heller, wrote: “Unplanned engine shutdowns happened four times during a hard-driving test week. I never encountered anything like this in 37 years of driving. I hope I never do again.”

DeGiorgio kept the same part number for the revamped switch but never told anyone.

Despite the negative media coverage and lawsuits that began trickling in, no one at GM did anything. A company attorney told the New York Times that moving stalls in the Cobalt did not pose a safety risk. GM’s engineers assumed the faulty switch wasn’t dangerous because, as another GM engineer, Gary Altman, testified in a deposition, the cars “could still be maneuvered to the side of the road.”

What these engineers didn’t realize was that the Cobalt and Ion had been designed to shut off the airbags when the ignition key was moved to the “off” or “accessory” positions. They categorized the problem as one of “customer satisfaction,” not safety. The nation’s top auto regulator would later parrot this line of argument: “If a consumer can pull a car over to the side of the road and restart it,” David Friedman testified before Congress, safety is not a problem.

That didn’t mean no one inside GM was paying attention. A group of engineers tasked with safety issues replicated the moving stall problem in the Cobalt when GM’s Director of Product Investigations shut off the car with her knee. Afterward, a variety of GM committees proposed fixes but management rejected them all because they were deemed too costly because “none of the solutions represents an acceptable business case.” Instead GM issued a technical service bulletin to its dealers, advising them to tell customers who complained to remove extra objects from their key chains or plug the space with a free insert.

DeGiorgio viewed the cold weather start snafu a personal affront, and decided to revamp the switch. But he didn’t put much stock in the moving stall complaints because he assumed they would be fixed in the new design. He was right, since engine shutoff complaints practically disappeared after the new switch was introduced. Unfortunately, DeGiorgio kept the same part number for the revamped switch but never told anyone. This stymied several investigations into the switch, but when investigators confronted DeGiorgio, he claimed to remember nothing about any changes — like he had in his deposition. (Later a document authorizing the changes surfaced with his signature on it.) GM, a global corporation with a market cap of $50 billion, never did figure out what was wrong with the switch.

Memo re: “Cost estimate to change the vehicle key for the Cobalt.”

As a scathing report commissioned by GM into the Cobalt switch debacle concluded, it took “an outside expert working for a plaintiff’s attorney” to take apart two switches to find “the cause it took GM years to determine.” That “expert” was actually two experts – Charlie Miller and Mark Hood, working for Lance Cooper.

The Melton case spooked GM’s legal team. The first time GM learned that the ignition switch had been altered in post-2008 vehicles was when Cooper provided the evidence to the automaker in April 2013. Three months later, an outside counsel to GM who evaluated the Melton case informed the company that the case, from the automaker’s perspective, was a “very poor trial candidate.” The plaintiffs “would argue that GM had known of the defect from the time that Cobalts first ‘rolled off the assembly line’ and yet it has ‘essentially done nothing to correct the problem for the last nine years.’” To avoid a “substantial adverse verdict” he recommended that the “case needs to be settled.”

While the Melton case settled in September 2013, GM, moving at LA rush hour traffic speed, took five months before recalling 800,000 Chevy Cobalts and Pontiac G5s. Cooper was incensed at the puny size of the recall, and dashed off a letter to the National Highway Traffic and Safety Administration (NHTSA).

“GM has failed to fulfill its legal obligation to report this defect to NHTSA within five days of discovering a defect,” Cooper wrote. “Nor has GM met its duty to include all defective vehicles in the recall. This recall is nine years overdue, and incomplete.”

A week later, GM added to the tally: 600,000 Chevrolet HHR, Pontiac Solstice, Saturn Ion, and Saturn Sky vehicles, and in March threw in another 824,000 cars GM sold in the US between 2008 and 2011. The following month GM found another flaw in the ignitions of the 2.6 million vehicles it had already recalled, and as a remedy announced it would replace an additional part.

With public and congressional pressure mounting, the automaker, under its new CEO, Mary Barra, claimed in a Congressional Hearing that it was turning over a new leaf, commissioning an investigation by attorney Anton Valukis, who lambasted the company for a pattern of “incompetence and neglect.” It absolved upper management of direct blame for the switch debacle but pointed to a see-no-evil, hear-no-evil corporate culture that valued inertia.

“Over a decade,” the 315-page report stated, “GM personnel failed to search for, share, or gather knowledge and that failure had serious consequences. There are multiple components to these failures, involving individual mistakes, organizational dysfunction, and systems inaccessible to some and impenetrable to many.”

The report mentions the “GM Nod,” which the company’s newish CEO, Mary Barra, explained was a staple of GM managers, nodding in agreement at steps that should be taken then doing nothing, and the “GM Salute”: where employees would sit through meetings with their arms folded, as if to say responsibility lay with anyone else but themselves.

Now, suddenly, GM has become proactive over safety. Over the course of the year the automaker has earmarked $1.3 billion to cover the cost of recalling 30 million other vehicles for a litany of troubles — from defective seat belts (Saturn Outlook, GM Acadia) to faulty wiring (Corvette, Buick Lacrosse), software programming errors (Cadillac), shoddy switches (Camaro), busted airbags (Pontiac Vibe, Cadillac Escalade), and defective windshield wipers (Cadillac CTS).

It’s an unprecedented feat. Time calculated that if you took all of the cars that GM has recalled this year and lined them up bumper to bumper, you’d end up with a line that would wrap around the earth four times.

Stack them and you’d reach halfway to the moon. (Some, no doubt, would call that a good start.)

I phoned a spokesman for GM, James R. Cain, who called the report the automaker commissioned “sobering,” and told me the chastened company has truly changed. He claims safety is now the automaker’s number one priority, and ticked off a number of recent initiatives that GM has undertaken to streamline its decision-making — reorganizing departments, beefing up safety inspectors in the field, encouraging better vehicle integration, and ensuring that problems are addressed before any car is sold. The automaker went back to the early 1990s to see if earlier models had faulty switches, and when it discovered some did, it issued more recalls.

“We want to make sure nothing like this ever happens again,” Cain says.

As for Raymond (“tired of the switch from hell”) DeGiorgio, he was placed on paid leave for two months before he was fired, along with 14 other GM personnel, including his colleague, Cobalt engineer Gary Altman. As the justice department continues to investigate it’s not out of the realm of possibilities that he and others at GM could face criminal charges.

There remains, however, a clear and present danger. Slightly more than a million of the 2.6 million recalled GM cars have been brought in for repairs, with a third of them belonging to drivers with children. This is a serious, potentially deadly problem. In March, there was a death linked to the faulty ignition switch in a car that had already been recalled, but GM didn’t have the parts in stock yet.

The company has sent multiple mailings, called car owners at home, taken out ads, and prodded dealers to do their own outreach as well as using social media to get the word out. GM employees have even been showing up at the homes of recalled car owners, offering free loaner vehicles while they affect repairs.

“Recalls are inconvenient,” Cain says, “but we’re trying to make it easy as possible for people, and we can do the job fairly quickly.”

Sadly, this new embrace of safety comes four years too late to help Brooke Melton, who died in a car accident that never should have happened. Her family is trying to reopen her case, alleging that the company acted fraudulently in concealing the ignition switch flaw. If DeGiorgio had not lied, Cooper argues, the Meltons would not have settled. While the link between the ignition switch and the airbags at a time when a driver and passengers need them most has received the most attention an airbag wouldn’t have saved Brooke Melton. She wasn’t killed in a frontal collision when the airbags didn’t deploy. She was T-boned at 60 mph, her car had no side airbags, and the Cobalt received some of the lowest ratings in side-impact crash tests.

If Lance Cooper is successful – a trial date is set for April 2016 — it could lead to other settled cases being re-filed, complicating GM’s attempts to put the whole sordid, potentially criminal, mess behind it.

And the Meltons wouldn’t have it any other way. This time they say they won’t settle. They want their day in court. They want the world to know what GM did to their daughter.

[Photo credits: Feature image of Brooke Melton’s post-crash Cobalt and photos of her handwritten note, the printout from her Cobalt’s black box, car keys, and comparison of old and new ignition switches courtesy of The Cooper Firm; other images via the Valukis Report.]

Adam is a journalism professor at New York University, and has written for The New York Times, Forbes, Fast Company, the Economist, as well as many others. He is the author of several books, including the critically acclaimed “Viral Loop.” His latest is “Play at Work: How Games Inspire Breakthrough Thinking,” which is coming out in paperback next year. Follow him on Twitter @penenberg or visit his website, penenberg.com.

Disney rendered its new animated film on a 55,000-core supercomputer

19 October 2014 - 7:00am

Disney's upcoming animated film Big Hero 6, about a boy and his soft robot (and a gang of super-powered friends), is perhaps the largest big-budget mash-up you'll ever see. Every aspect of the film's production represents a virtual collision of worlds. The story, something co-director Don Hall calls "one of the more obscure titles in the Marvel universe," has been completely re-imagined for parent company Disney. Then, there's the city of San Fransokyo it's set in -- an obvious marriage of two of the most tech-centric cities in the world. And, of course, there's the real-world technology that not only takes center stage as the basis for characters in the film, but also powered the onscreen visuals. It's undoubtedly a herculean effort from Walt Disney Animation Studios, and one that's likely to go unnoticed by audiences.

"We've said it many, many times. We made the movie on a beta renderer," says Hank Driskill, technical supervisor for Big Hero 6. "It was very much in progress." Driskill is referring to Hyperion, the software Disney created from the ground up to handle the film's impressive lighting. It's just one of about three dozen tools the studio used to bring the robotics-friendly world of San Fransokyo to life. Some, like the program Tonic originally created for Rapunzel's hair in Tangled, are merely improved versions of software built for previous efforts, or "shows" as Disney calls them. Hyperion, however, represents the studio's greatest and riskiest commitment to R&D in animation technology thus far. And its feasibility wasn't always a sure thing, something Disney's Chief Technology Officer Andy Hendrickson underscores when he says, "It's the analog to building a car while you're driving it."

"We've said it many, many times. We made the movie on a beta renderer," says Hank Driskill, technical supervisor for Big Hero 6.


For that reason, Hendrickson instructed his team to embark on two development paths for Big Hero 6: the experimental Hyperion and a Plan B that hinged on a commodity renderer. It took a team of about 10 people over two years to build Hyperion, during which time Driskill says resources were being spread thin: "We were running with a backup plan until around June of last year ... [and] we realized we were spending too much energy keeping the backup plan viable. It was detracting in manpower ... from pursuing the new idea as fully as we could. So we just said, 'We're gonna go for it.' And we turned off the backup plan."

Hyperion, as the global-illumination simulator is known, isn't the kind of technology that would excite the average moviegoer. As Hendrickson explains, it handles incredibly complex calculations to account for how "light gets from its source to the camera as it's bouncing and picking up colors and illuminating other things." This software allowed animators to eschew the incredibly time-consuming manual effort to animate single-bounce, indirect lighting in favor of 10 to 20 bounces simulated by the software. It's responsible for environmental effects -- stuff most audiences might take for granted, like when they see Baymax, the soft, vinyl robot featured in the film, illuminated from behind. That seemingly mundane lighting trick is no small feat; it required the use of a 55,000-core supercomputer spread across four geographic locations.

Disney Animation CTO Andy Hendrickson demonstrates Hyperion's real-world lighting simulation.

"This movie's so complex that humans couldn't actually handle the complexity. We have to come up with automated systems," says Hendrickson. To manage that cluster and the 400,000-plus computations it processes per day (roughly about 1.1 million computational hours), his team created software called Coda, which treats the four render farms like a single supercomputer. If one or more of those thousands of jobs fails, Coda alerts the appropriate staffers via an iPhone app.

To put the enormity of this computational effort into perspective, Hendrickson says that Hyperion "could render Tangled from scratch every 10 days."

If that doesn't drive the power of Disney's proprietary renderer home, then consider this: San Fransokyo contains around 83,000 buildings, 260,000 trees, 215,000 streetlights and 100,000 vehicles (plus thousands of crowd extras generated by a tool called Denizen). What's more, all of the detail you see in the city is actually based off assessor data for lots and street layouts from the real San Francisco. As Visual Effects Supervisor Kyle Odermatt explains, animating a city that lively and massive simply would not have been possible with previous technology. "You couldn't zoom all the way out [for a] wide shot down to just a single street level the way we're able to," he says.

"This movie's so complex that humans couldn't actually handle the complexity. We have to come up with automated systems," says Hendrickson.

Beyond the supercomputer cluster and software tools devised to make the movie, Big Hero 6 leans heavily on cutting-edge technology for its visual majesty in one other way: its characters. Both Baymax, the aforementioned, lovable robot sidekick and the microbots, swarm-like mini-drones controlled by telepathy, are steeped in some very real scientific research. That decision to ground the world of Big Hero 6 in near-future technologies led Hall and co-director Chris Williams on research trips to MIT, Harvard and Carnegie Mellon in the US and even to Tokyo University in Japan.

A soft robotic arm developed by researchers at Carnegie Mellon University.

"You know, we try to look at, like, five to 10 years down the road at what was coming ... It seems counterintuitive because in animation you can do anything, but it still has to be grounded in a believable world," says Hall.

Indeed, there's even a moment where supergenius lead character Hiro Hamada uses a 3D printer in his garage to create an outfit for Baymax. In discussing the scene, Roy Conli, the film's producer, credits the "maker movement that's going on right now." He adds, "These kids are makers. So it's a little bit the celebration of the nerd."

To put the enormity of this computational effort into perspective, Hendrickson says that Hyperion "could render Tangled from scratch every 10 days."

It was during a visit to Carnegie Mellon that Hall came across researcher Chris Atkeson, who'd been working in the field of inflatable, soft robotics; robots intended for the health care industry. Hall says Atkeson pleaded with him to "make a movie where the robot is not the villain." But Atkeson didn't have to do much convincing -- Hall's vision for Baymax meshed nicely with his research. He'd wanted a robot audiences hadn't seen on screen before. Hall continues, "The minute I saw this [research], I knew that we had our huggable robot. I knew that we had found Baymax."

The team also drew inspiration for Baymax from existing compassionate-care tech out of Japan. "They're a little ahead of the curve," Hall says. "I mean, [health care robots] are actually in practice in some of the hospitals in Japan. They're not vinyl; they're not Baymax. They're plastic robotics."

The high-tech city of San Fransokyo represents a mash-up of eastern and western culture.

Robotics research out of Carnegie Mellon also provided the basis for the unwitting pawns of the film: the Lego-like, mind-controlled microbots. Of course, the version we see in the film is a much more fantastical approach to the simple, water-walking bots Hall's team glimpsed during their visit. That, coupled with a heavy dose of inspiration from swarm-drone tech, led to the insect-like creepiness of the microbots in the final film.

By design, the electromagnetic microbots move as if part of a chain: Each individual "link" travels from front to back to propel the swarm forward in a circuit-board-like pattern. On average, the visual effects team says there are about 20 million microbots onscreen in a given shot, and that level of complexity is where Hyperion once again comes crucially into play. Originally, however, the team didn't think its full vision of the microbots would even be possible to render.

In a way, Big Hero 6 is a love letter to technology.

"We thought the technology would never actually be able to handle it happening in all of the shots," explains Head of Effects Michael Kaschalk. "And to do that from shot to shot, that takes artists' work to just be able to create the [lighting] cheat. But as Hyperion developed, and we actually built the system, we found that it was handling all of this data just fine. So we actually built the real thing."

Hiro scans Baymax to create 3D-printed armor.

Though tech innovation clearly plays an important role in development at Disney Animation Studios, it's not the sole guiding force for each film and, for that matter, neither is the story. The studio's process is entirely collaborative. "We are looking for input from everybody that works here for storytelling ... there's no doubt that those ideas can rise up from anywhere to become a big piece or small piece of the story," says Odermatt. There's no one single source of motivation other than a love of research and functional design -- key concepts imparted by Chief Creative Officer John Lasseter.

"The movie does celebrate science and technology in a way that we haven't really done before."

In a way, Big Hero 6 is a love letter to technology. It's a fantasy film that gives audiences a knowing wink toward the robot-assisted near-future, as if to say, "This is exactly where you're headed. And it's coming soon." Big Hero 6 also represents a perfect storm for Disney: The subject matter (makers and robotics) and setting (hyper-tech San Fransokyo) dovetailed with the economic feasibility of cutting-edge computational hardware (that massive render farm) and the development of advanced animation techniques (Hyperion). It's a film for, by and from lovers of technology.

That Big Hero 6 has a technological heart and soul is not lost on Hall. In fact, he's keenly aware of this. "The movie does celebrate science and technology in a way that we haven't really done before."

[Image credit: Walt Disney Animation; Carnegie Mellon University (soft robotic arm)]

Tags: 3dprinting, animation, big hero 6, bighero6, carnegiemellon, disney, disney animation, disneyanimation, donhall, hdpostcross, makers, marvel, robotics, robots, sanfransokyo, softrobotics, Swarm, swarmrobots, uk-feature, video, WaltDisney, WaltDisneyAnimationStudios

Shall we fork Debian?

19 October 2014 - 7:00am
Who are you?!

We are Veteran Unix Admins and we are concerned about what is happening to Debian GNU/Linux to the point of considering a fork of the project.

And why would you do that?

Some of us are upstream developers, some professional sysadmins: we are all concerned peers interacting with Debian and derivatives on a daily basis.

We don't want to be forced to use SystemD in substitution to the traditional UNIX SystemV Init, because SystemD betrays the UNIX Philosophy.

We contemplate adopting more recent alternatives to SystemV, but not those undermining the basic design principles of "do one thing and do it well" with a complex collection of dozens of tightly coupled binaries and opaque logs.

Are there better solutions than forking?

Yes: vote Ian Jackson's proposal to preserve freedom of choice of init systems.

Then make sure SystemV stays the default, SystemD can be optional.

Debian leaders can go on evaluating more init systems, just not impose one that ignores the needs of most of its users.

Why don't you do that yourselves?

We are excluded from voting on the issue: only few of us have the time and patience to interact with Debian on a voluntary basis.

Now we do what we can, hoping our concerns will be heard by those who can cast a vote about it.

Is really all this fuzz necessary?

To quote Ian Jackson:

"This resolution is not only important within Debian, and not only for jessie (its next release). It is also important feedback for upstreams, and our peer distros and downstreams".

Why is this happening in your opinion?

The current leadership of the project is heavily influenced by Gnome developers and too much inclined to consider desktop needs as crucial to the project, despite the fact that the majority of Debian users are tech-savvy system administrators.

Can you articulate your critique to SystemD?

To paraphrase Eric S. Raymond on the issue, we see SystemD being very prone to mission creep and bloat and likely to turn into a nasty hairball over the longer term.

We like controlling the startup of the system with shell scripts that are readable, because readability grants a certain level of power and consciousness for those among us who are literate, and we believe that centralizing control services, sockets, devices, mounts, etc., all within one daemon is a slap in the face of the UNIX Philosophy.

How long are your beards?

This is not a beard contest, rest assured the furry ones among us are not sheeps.

To sum it up?

If SystemD will be substituting SystemV in Debian, we will fork the project and create a new distro: Pure Debian by Veteran Unix Admins.

We hope this won't be necessary, but we are well prepared for it.

We need to talk.

Sure, write an email to

VUA at debianfork dot org

. Are you guys alone in this?

Not at all, there are more protests against the imposition of SystemD on users.

There is the boycott systemd website providing several references.

Then there is the "SystemD fork" called UselessD.

The wikipedia page lists also some critiques in its SystemD reception page.

With our protest we intend to represent the discontent of Debian users, because that's who we. We intend to keep using Debian on our servers, or a Pure Debian fork if necessary. Others might have other goals, but we all share a common problem: SystemD and its fundamental betrayal of the UNIX Philosophy.

Thanks for doing this. How can I help?

Cheers.

You can help by talking with fellow Debian developers and convincing them of how wrong is to betray their biggest userbase by listening to desktop needs.

Also it can be helpful to monitor and update the Wikipedia page about SystemD.

How does people react to your protest?

Here below some of the messages we are receiving:

Omar: I'm with you guys in the way that systemd is not the way forward. But I do not think that sysvinit is the way forward either. Maybe another init system? Like GNU DMD? I know its still pretty immature, but I think it's a good init system. I don't think sysvinit is ever going to make a comeback. And forking Debian? That's a very hard feat. Debian is the biggest Linux distro to date with hundreds of developers and at least 10 times as much users. And you'll have to change a lot of things from upstream. Even Ubuntu decided to use systemd instead of having to change the base init to upstart. Perhaps going to Slackware instead? That's what I use. Its very UNIX like. If that's what you strive for. Junior: Thank you so much for this. I've been using Debian since Hamm and this SystemD nonsense has me ready to jump ship.

Dutch team is pioneering development of crops fed by sea water

19 October 2014 - 7:00am

Marc van Rijsselberghe with some of his experimental crop of salt-tolerant potatoes. Photograph: Observer

In a small army field-hut Dr Arjen de Vos shows off his irrigation machine with pride. Pipes lead out to several acres of muddy field, where only a few stragglers from the autumn harvest of potatoes, salads, carrots and onions are left. The tubes are lined with copper to stop corrosion because – in a move that defies everything we think we know about farming – de Vos is watering his plants with diluted sea water.

Last week the project beat 560 competitors from 90 countries to win the prestigious USAid grand challenge award for its salt-tolerant potato. “It’s a game changer,” said de Vos. “We don’t see salination as a problem, we see it as an opportunity.”

Here, on one of the Netherlands’ northernmost islands, windswept Texel (pronounced Tessel) surrounded by encroaching ocean and salt marshes that seep sea water under its dykes and into ditches and canals, an enterprising farmer has taken the radical step of embracing salt water instead of fighting to keep it out. And now he thinks he might just help feed the world.

Inspired by sea cabbage, 59-year-old Marc van Rijsselberghe set up Salt Farm Texel and teamed up with the Free University in Amsterdam, which sent him de Vos to look at the possibility of growing food using non-fresh water. Their non-GM, non-laboratory-based experiments had help from an elderly Dutch farmer who has a geekish knowledge of thousands of different potato varieties.

“The world’s water is 89% salinated, 50% of agricultural land is threatened by salt water, and there are millions of people living in salt-contaminated areas. So it’s not hard to see we have a slight problem,” said van Rijsselberghe. “Up until now everyone has been concentrating on how to turn the salt water into fresh water; we are looking at what nature has already provided us with.”

The scarcity of fresh water has been labelled as the planet’s most drastic problem by the World Bank, NGOs, governments and environmentalists. A fifth of the world’s population already lives in areas of drought, and climate change is only going to exacerbate the problem. Poor farming practices, along with road and pavement building, is raising water tables and increasing the salination of rivers and lakes – in the Western Australian wheat-belt alone, salinity has caused a 50% fall in the numbers of wetland bird species, and threatened 450 plant species with extinction.

Attempts to desalinate sea water are going on around the globe – the UK has a £270m plant on the river Thames and Saudi Arabia produces 70% of its drinking water through desalination. But removing the dissolved minerals is expensive, requires much energy and the leftover concentrated brine has to be disposed of. The process is far too expensive to be used for irrigation in poorer countries. But thanks to a partnership with Dutch development consultants MetaMeta, several tonnes of the Texel seed potatoes are now on their way to Pakistan where thousands of hectares of what until now had been unproductive land because of sea water encroachment have been set aside for them.

If the experiment works and the potatoes adapt to the Asian climate, it could transform the lives of not only small farmers in Pakistan and Bangladesh,, where floods and sea water intrusion wipe out crops with increasing regularity, but also worldwide the 250 million people who live on salt-afflicted soil.

Van Rijsselberghe is happy to be seen as an entrepreneur whose interest was to grow a “value added” food crop that would tolerate Holland’s problems with water. He says he used a trial and error approach in development. “We’re not a scientific institution, we’re a bunch of lunatics with an idea that we can change things and we are interested in getting partnerships together with normal farmers, not people who want to write doctorates.” As a pioneer of organic farming in the 1990s, he faced heavy opposition, while a project to grow sea aster – a salt marsh-grown salad popular in high-end restaurants – ended in disaster when 3,000 migrating ducks made an unexpected stop and ate the entire crop in three hours. ”

He says the Netherlands needs to rethink its approach to food: “A third of the country is sensitive to salination. We put up dykes and pump away the water; we feel safe. We believe that outside the dykes is for the fishermen and inside the dikes is for the farmers. I think we have to stop that and talk to each other. What can be grown on the salt marshes and in the sea? Can we grow prawns in the lakes? We need to have these conversations and rethink the way we produce food.”

But where does all that salt go? Aren’t we in danger of overdosing on salt if we eat the Salt Farm Texel crops? “What we find is that, if you tease a plant with salt, it compensates with more sugar,” said de Vos. “The strawberries we grow, for example, are very sweet. So nine times out of ten the salt is retained in the leaves of the plant, so you’d have to eat many many kilos of potatoes before you’d exceed your recommended salt intake. But some of the salads are heavy with salt, you wouldn’t eat them by the bucketful.

“And there are other potentials, too – if we could find a grass that was salt tolerant, then it would make a big difference to all those golf courses built in developing countries that are using up all the locals’ fresh water. Nature has already laid out some helping hands for us. Mankind just hasn’t realised it.”

The Hidden Power of BCD Instructions

19 October 2014 - 7:00am

The Hidden Power of BCD Instructions

St0Ne

While programming a bit with x86 ASM, I discovered that AAx instructions are just great. Yes, I'm talking about those weird BCD (Binary Coded Decimal) instructions made for programmers who can't count in hex...

Most if not all Intel processors can count in decimal, storing integers between 0 and 9 in four-bit units, and performing add, sub, mul and div with them. In many books or asm tutorials, those instructions are considered 'inefficient' or 'completely useless'.

Let's take a look at them:
AAA : ASCII Adjust after Addition
AAS : ASCII Adjust after Subtraction
AAM : ASCII Adjust after Multiplication
AAD : ASCII Adjust before Division

Although they are second rank instructions, Intel reserved four opcodes (actually six if you include DAA and DAS) and one flag (auxilliary carry) for them... that deserves some attention.

Unfortunately, none of these instructions is correctly documented by Intel! You may be already aware of that, but I'll explain what those instructions do exactly.

Then, we will look at what can be done with those pretty nice instructions, especially when doing size optimization...

AAA - AAS

These instructions 'ASCII adjust AL after addition/subtraction, using AF to determine whether there was a carry'.

Let me explain what this AF flag is. AF stands for Auxiliary Carry. The AF flag is set when an arithmetic operation generates a carry or a borrow out of bit 3 of the result.

For example 5+2=7: AF is cleared.
However, 9+8=17=11h, which is greater than 0Fh: AF is set.

According to Intel documentation, AAA/AAS are only useful after an ADD/SUB instruction; actually we can use AAA and AAS after any arithmetic instruction (they all modify AF), including INC/DEC and CMP.

So, let's take a look at what AAA does. Here is the pseudo-code equivalent (from Intel):

IF ((AL AND 0FH) > 9) OR (AF = 1) THEN AL = (AL + 6) AND 0FH; AH = (AH + 1); AF = 1; CF = 1; ELSE AF = 0; CF = 0; FI;

That's true for a typical Intel documentation compliant use like this one:

mov al,6 add al,9 ;al=15=0Fh aaa ;al=21=15h => it's in decimal!

But what happens if you write something like:

mov ax,00F6h add al,9 ;ax=255=00FFh aaa ;ax=507=0205h

If you stick to Intel documentation, we should have ax=0105h at the end, not 0205h! Well, the Intel pseudo-code is wrong in that case. I think it was the way the 8086 worked, but newer processors use this pseudo-code:

IF ((AL AND 0FH) > 9) OR (AF = 1) THEN AX = (AX + 0106h); AF = 1; CF = 1; ELSE AF = 0; CF = 0; FI; AL = AL AND 0FH;

For AAS, it's exactly the same problem, you just have to replace the '+' with a '-'.

What about the flags? AF and CF are set as described above. OF stays unchanged, SF is cleared.

ZF is set if AX=0, PF is set depending on AL (pretty logical, isn't it?).

AAD - AAM

These are the most interesting instructions and are described by Intel as 'ASCII adjust AX before division/after multiplication'.

They take 'x' as a byte argument. It used to be undocumented, but it's now in Intel's documentation.

AAD : AL = AH*x + AL AH = 0
AAM : AH = AL/x AL = AL mod x

What Intel doesn't say is that all flags (SF, ZF, PF, OF, CF, AF) are set depending on the result, exactly as with any other arithmetic instruction.

For AAM, the flags reflect the result of the 'mod' operation (AL mod x). It means that SF, ZF and PF are set according to AL, and that OF, CF and AF are cleared.

For AAD, the flags reflect the result of the '+' operation (AH*x)+AL.

So, when using 8 bit values, AAD and AAM are good alternatives to MUL and DIV: shorter code and opportunity to use flags.

Used with parameters like 0 or 1, they are often useful short ways to do ADD, CMP and MOV combinations:

+----+-------+-----------------------+ | AH | AL | Equivalence | +-------+----+-------+-----------------------+ | AAD 0 | 0 | AL | mov ah,0 ; cmp al,0 | | AAM 0 | | | Division by zero | | AAD 1 | 0 | AL+AH | add al,ah ; mov ah,0 | | AAM 1 | AL | 0 | mov ah,al ; and al,0 | +-------+----+-------+-----------------------+

Simple Examples

So, what can we do with those AAx instructions? Here are some simple examples.

1. Test the value in AL

To test whether AL is 0 or 1, one single-byte instruction is enough:

aaa jz @zero

2. How to test bounds

If you want to test AL against two values, you would do something like:

cmp al,MIN jz @bound_reached cmp al,MAX jz @bound_reached

Using AAM, it's shorter :

sub al,MIN aam MAX-MIN jz @bound_reached

3. Discrete homotethie AL=AL+k[AL/x]

The combination of AAM and AAD is perfect in this case: after those two instructions, AL is increased by K times the integer part of (AL/x).

aam X aad X+K

It's often a nice way to replace a CMP/Jcc/ADD instruction block.

For example, if you want to change the case of an ASCII character in [0-9][A-Z][a-z], you could write:

aam 40h aad 60h ;to lower case aam 60h aad 40h ;to upper case

Complex Example

Well, if you are still not convinced by the AAx instructions, here is an example that might be very useful.

Imagine we know AL is one of those ten (randomly chosen) values: 01h, 25h, 39h, B3h, 78h, C4h, 6Bh, A6h, 12h, and F0h. We want to test in which set it is: A={25h, 6Bh, 78h, B3h, C4h} or B={01h, 12h, 39h, A6h, F0h}?

Of course, we could compare AL with each value in A:

cmp al,25h jz @set_A cmp al,6Bh jz @set_A cmp al,78h jz @set_A cmp al,0B3h jz @set_A cmp al,0C4h jz @set_A @set_B: ... ... @set_A: ... ...

But we can also do this using AAD and AAM. We also need a flag set by the AAD instruction with a probability of about 1/2: both SF and PF are suitable.

So, we just need a dummy little C program to try all 256*256*4 possibilities and find one solution of the following form:

aam X aad Y jcc @set_A

with jcc being jp, jnp, js or jns.

This program looks for solutions using the parity flag or the sign flag...

#include <stdio.h> #define byte unsigned int #define NR 10 byte al,ah,x,y,k,found; //Values array byte set[NR]={0x01,0x25,0x39,0xB3,0x78,0xC4,0x6B,0xA6,0x12,0xF0}; //Results array : 0 for set_A, 1 for set_B byte res[NR]={1, 0, 1, 0, 0, 0, 0, 1, 1, 1}; //P flag array byte p[NR] ={0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; //S flag array byte s[NR] ={0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; main () { for (x=1; x<256; x++) { for (y=0; y<256; y++) { for (k=0; k<NR; k++) { p[k]=0; al = set[k] % x; ah = set[k] / x; al = (al+ah*y)%256; ah = 0; if (al<0x80) s[k]=0; else s[k]=1; while (al) { p[k]+=al%2; al>>=1; } p[k]%=2; } found=1; for (k=1; k<NR; k++) { if ((p[k]^res[k])!=(p[0]^res[0])) found=0; } if (found) { printf ("X=%d Y=%d ",x,y); if (p[0]^res[0]) printf ("using JNP\n"); else printf ("using JP\n"); } found=1; for (k=1; k<NR; k++) { if ((s[k]^res[k])!=(s[0]^res[0])) found=0; } if (found) { printf ("X=%d Y=%d ",x,y); if (s[0]^res[0]) printf ("using JNS\n"); else printf ("using JS\n"); } } } }

Here we get 37 solutions; this one for example:

aam 0Dh aad 11h jp @set_A

You want to verify ? Here we go:

AH:AL 00:01 00:25 00:39 00:B3 00:78 00:C4 00:6B 00:A6 00:12 00:F0 aam 00:01 02:0B 04:05 0D:0A 09:03 0F:01 08:03 0C:0A 01:05 12:06 aad 00:01 00:2D 00:49 00:E7 00:9C 00:00 00:8B 00:D6 00:16 00:38 PF 1 0 1 0 0 0 0 1 1 1

The weakest point is that it doesn't help making the code clear and easy to understand... or is this a nice feature?

Conclusion

I hope it's now obvious that AAx instructions are powerful. Of course, AAM and AAD are slow, and if you need speed, in most cases you have to forget it. But they are actually very short macro instructions: 2 bytes for a MUL-ADD, that's fantastic!

Credits: http://www.x86.org/secrets/opcodes.htm

For any comments, suggestions or questions, contact me.

st0ne . almeras@via.ecp.fr

The Hidden Power of BCD Instructions

St0Ne

While programming a bit with x86 ASM, I discovered that AAx instructions are just great. Yes, I'm talking about those weird BCD (Binary Coded Decimal) instructions made for programmers who can't count in hex...

Most if not all Intel processors can count in decimal, storing integers between 0 and 9 in four-bit units, and performing add, sub, mul and div with them. In many books or asm tutorials, those instructions are considered 'inefficient' or 'completely useless'.

Let's take a look at them:
AAA : ASCII Adjust after Addition
AAS : ASCII Adjust after Subtraction
AAM : ASCII Adjust after Multiplication
AAD : ASCII Adjust before Division

Although they are second rank instructions, Intel reserved four opcodes (actually six if you include DAA and DAS) and one flag (auxilliary carry) for them... that deserves some attention.

Unfortunately, none of these instructions is correctly documented by Intel! You may be already aware of that, but I'll explain what those instructions do exactly.

Then, we will look at what can be done with those pretty nice instructions, especially when doing size optimization...

AAA - AAS

These instructions 'ASCII adjust AL after addition/subtraction, using AF to determine whether there was a carry'.

Let me explain what this AF flag is. AF stands for Auxiliary Carry. The AF flag is set when an arithmetic operation generates a carry or a borrow out of bit 3 of the result.

For example 5+2=7: AF is cleared.
However, 9+8=17=11h, which is greater than 0Fh: AF is set.

According to Intel documentation, AAA/AAS are only useful after an ADD/SUB instruction; actually we can use AAA and AAS after any arithmetic instruction (they all modify AF), including INC/DEC and CMP.

So, let's take a look at what AAA does. Here is the pseudo-code equivalent (from Intel):

IF ((AL AND 0FH) > 9) OR (AF = 1) THEN AL = (AL + 6) AND 0FH; AH = (AH + 1); AF = 1; CF = 1; ELSE AF = 0; CF = 0; FI;

That's true for a typical Intel documentation compliant use like this one:

mov al,6 add al,9 ;al=15=0Fh aaa ;al=21=15h => it's in decimal!

But what happens if you write something like:

mov ax,00F6h add al,9 ;ax=255=00FFh aaa ;ax=507=0205h

If you stick to Intel documentation, we should have ax=0105h at the end, not 0205h! Well, the Intel pseudo-code is wrong in that case. I think it was the way the 8086 worked, but newer processors use this pseudo-code:

IF ((AL AND 0FH) > 9) OR (AF = 1) THEN AX = (AX + 0106h); AF = 1; CF = 1; ELSE AF = 0; CF = 0; FI; AL = AL AND 0FH;

For AAS, it's exactly the same problem, you just have to replace the '+' with a '-'.

What about the flags? AF and CF are set as described above. OF stays unchanged, SF is cleared.

ZF is set if AX=0, PF is set depending on AL (pretty logical, isn't it?).

AAD - AAM

These are the most interesting instructions and are described by Intel as 'ASCII adjust AX before division/after multiplication'.

They take 'x' as a byte argument. It used to be undocumented, but it's now in Intel's documentation.

AAD : AL = AH*x + AL AH = 0
AAM : AH = AL/x AL = AL mod x

What Intel doesn't say is that all flags (SF, ZF, PF, OF, CF, AF) are set depending on the result, exactly as with any other arithmetic instruction.

For AAM, the flags reflect the result of the 'mod' operation (AL mod x). It means that SF, ZF and PF are set according to AL, and that OF, CF and AF are cleared.

For AAD, the flags reflect the result of the '+' operation (AH*x)+AL.

So, when using 8 bit values, AAD and AAM are good alternatives to MUL and DIV: shorter code and opportunity to use flags.

Used with parameters like 0 or 1, they are often useful short ways to do ADD, CMP and MOV combinations:

+----+-------+-----------------------+ | AH | AL | Equivalence | +-------+----+-------+-----------------------+ | AAD 0 | 0 | AL | mov ah,0 ; cmp al,0 | | AAM 0 | | | Division by zero | | AAD 1 | 0 | AL+AH | add al,ah ; mov ah,0 | | AAM 1 | AL | 0 | mov ah,al ; and al,0 | +-------+----+-------+-----------------------+

Simple Examples

So, what can we do with those AAx instructions? Here are some simple examples.

1. Test the value in AL

To test whether AL is 0 or 1, one single-byte instruction is enough:

aaa jz @zero

2. How to test bounds

If you want to test AL against two values, you would do something like:

cmp al,MIN jz @bound_reached cmp al,MAX jz @bound_reached

Using AAM, it's shorter :

sub al,MIN aam MAX-MIN jz @bound_reached

3. Discrete homotethie AL=AL+k[AL/x]

The combination of AAM and AAD is perfect in this case: after those two instructions, AL is increased by K times the integer part of (AL/x).

aam X aad X+K

It's often a nice way to replace a CMP/Jcc/ADD instruction block.

For example, if you want to change the case of an ASCII character in [0-9][A-Z][a-z], you could write:

aam 40h aad 60h ;to lower case aam 60h aad 40h ;to upper case

Complex Example

Well, if you are still not convinced by the AAx instructions, here is an example that might be very useful.

Imagine we know AL is one of those ten (randomly chosen) values: 01h, 25h, 39h, B3h, 78h, C4h, 6Bh, A6h, 12h, and F0h. We want to test in which set it is: A={25h, 6Bh, 78h, B3h, C4h} or B={01h, 12h, 39h, A6h, F0h}?

Of course, we could compare AL with each value in A:

cmp al,25h jz @set_A cmp al,6Bh jz @set_A cmp al,78h jz @set_A cmp al,0B3h jz @set_A cmp al,0C4h jz @set_A @set_B: ... ... @set_A: ... ...

But we can also do this using AAD and AAM. We also need a flag set by the AAD instruction with a probability of about 1/2: both SF and PF are suitable.

So, we just need a dummy little C program to try all 256*256*4 possibilities and find one solution of the following form:

aam X aad Y jcc @set_A

with jcc being jp, jnp, js or jns.

This program looks for solutions using the parity flag or the sign flag...

#include <stdio.h> #define byte unsigned int #define NR 10 byte al,ah,x,y,k,found; //Values array byte set[NR]={0x01,0x25,0x39,0xB3,0x78,0xC4,0x6B,0xA6,0x12,0xF0}; //Results array : 0 for set_A, 1 for set_B byte res[NR]={1, 0, 1, 0, 0, 0, 0, 1, 1, 1}; //P flag array byte p[NR] ={0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; //S flag array byte s[NR] ={0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; main () { for (x=1; x<256; x++) { for (y=0; y<256; y++) { for (k=0; k<NR; k++) { p[k]=0; al = set[k] % x; ah = set[k] / x; al = (al+ah*y)%256; ah = 0; if (al<0x80) s[k]=0; else s[k]=1; while (al) { p[k]+=al%2; al>>=1; } p[k]%=2; } found=1; for (k=1; k<NR; k++) { if ((p[k]^res[k])!=(p[0]^res[0])) found=0; } if (found) { printf ("X=%d Y=%d ",x,y); if (p[0]^res[0]) printf ("using JNP\n"); else printf ("using JP\n"); } found=1; for (k=1; k<NR; k++) { if ((s[k]^res[k])!=(s[0]^res[0])) found=0; } if (found) { printf ("X=%d Y=%d ",x,y); if (s[0]^res[0]) printf ("using JNS\n"); else printf ("using JS\n"); } } } }

Here we get 37 solutions; this one for example:

aam 0Dh aad 11h jp @set_A

You want to verify ? Here we go:

AH:AL 00:01 00:25 00:39 00:B3 00:78 00:C4 00:6B 00:A6 00:12 00:F0 aam 00:01 02:0B 04:05 0D:0A 09:03 0F:01 08:03 0C:0A 01:05 12:06 aad 00:01 00:2D 00:49 00:E7 00:9C 00:00 00:8B 00:D6 00:16 00:38 PF 1 0 1 0 0 0 0 1 1 1

The weakest point is that it doesn't help making the code clear and easy to understand... or is this a nice feature?

Conclusion

I hope it's now obvious that AAx instructions are powerful. Of course, AAM and AAD are slow, and if you need speed, in most cases you have to forget it. But they are actually very short macro instructions: 2 bytes for a MUL-ADD, that's fantastic!

Credits: http://www.x86.org/secrets/opcodes.htm

For any comments, suggestions or questions, contact me.

st0ne . almeras@via.ecp.fr

Building the Largest Ship in the World

18 October 2014 - 7:00pm

The Maersk Triple E is the largest ship ever built, the pride and joy of the largest shipping company in the world. The ship was a huge hit with the public last year when it docked in Copenhagen for a week, 50,000 people visited, tours were given and an exhibition about the boat was made. It towered above the Copenhagen skyline, and like most of the rest of the population of Copenhagen I went down for a look at this monumental machine. I didn’t get on board that time – the tours sold out long before the ship arrived – so I went one better and persuaded Wired to send me to South Korea to photograph it being built, with unprecedented access to the shipyard and a completed ship.

Maersk has commissioned 20 Triple E’s to be built, and I arrived on the day of the delivery and naming ceremony of the 9th of those ships, the Matz Maersk (there were 8 other Triple E’s at different stages of production at the shipyard at the same time). After the champagne smashing ceremony I was expecting a tour of the ship from someone who knew it inside and out – instead I was just told “here it is – off you go!”. “Er OK … do you have a map?”. “No. The engine is that way, the bridge is that way. Have fun, and make sure you aren’t on board in 5 hours because the ship will be leaving for Russia.” So off I went …

That was fun. Apart from a couple of guys finishing some last-minute paint jobs, I pretty much had the whole ship to myself. First I hit the engine rooms: two massive engines power the ship, and the rooms that house them are arranged on about 5 stories at the back of the boat. Oops I mean ship, not boat. I kept saying “boat” while I was there and getting told off for it. Apparently I should actually be saying “vessel”. Anyway, despite being slightly worried that I was going to get lost and end up stuck on board on the way to Vladivostok, I opened a few hatches and ended up in the middle of the vessel, the area where the containers are kept, stacked 11 levels high on the inside and 10 levels high on the outside. Did I mention the Triple E can carry 18,000 containers? The space was completely empty, and holy crap it was big. Really really big. Somehow I made it out of there and was pretty happy to find out the ship was still docked, so I made my way up to the bridge. Only 15 crew live on the ship when it is at sea, and their living quarters make up the tower that sits under the bridge. They have a small cinema and a little swimming pool (which was empty). On the bridge I met the new Captain of the Matz Maersk, Lars Peter Jensen, for whom this was just another day in the office – Captain Jensen has worked for Maersk for 42 years and  served as captain on each of the 4 previous “largest ships in the world”. I made it off the ship in time and waved it on it’s way.

Cargo hold: Containers can be stacked 11 levels deep beneath the deck of the ship, and up to ten levels high on top.

The Daewoo Shipbuilding and Marine Engineering (DSME) shipyard in South Korea is the second largest shipbuilder in the world and one of the “Big Three” shipyards of South Korea, along with the Hyundai and Samsung shipyards. The shipyard, about an hour from Busan in the south of the country, employs about 46,000 people, and could reasonably be described as the worlds biggest Legoland. Smiling workers cycle around the huge shipyard as massive, abstractly over proportioned chunks of ships are craned around and set into place: the Triple E is just one small part of the output of the shipyard, as around 100 other vessels including oil rigs are in various stages of completion at the any time. The man in charge of delivering the Triple E’s for Maersk is Søren Arnberg, and the Matz Maersk is the last ship he is delivering before his retirement. Søren started his career with Maersk as an engineer in 1976 and has travelled the world since, contributing to the construction of hundreds of ships. Søren is hard-boiled of Dane with a glint in his eye and a dry sense of humor, who is not impressed by much.”It’s just another container vessel, it’s just a bit bigger” he says. “I’ve never been in a project with so much focus. Discovery Channel even made 6 episodes about it. It’s just a ship.” Søren, who is one of the stars of the Discovery Channel series, still hasn’t even watched it. “What are you going to do when you get home?” I ask. “Ask my new boss” he replies, referring to his wife.

The small town of Okpo has sprung up around the shipyard, and its flashing fluorescent lights, Korean barbeques, karaoke bars and hookers cater to the thousands of Korean and foreign workers at the shipyard. It’s quite a fun place to spend a couple of evenings drinking Soju, and I couldn’t help making the irrelevant comparison between this place and other, less flourescent (to put it nicely) industrial towns I have visited, such as Port Talbot. The Koreans like to have fun when they finish work.

Here is the original article, as printed in Wired magazine (UK edition), September 2014:

A BIGGER BOAT

PHOTOGRAPHY: ALASTAIR PHILIP WIPER

TEXT BY KATHRYN NAVE

Opko, a port in South Korea, is home to Daewoo Shipbuilding and Marine Engineering, a company constructing the world’s largest model of ship – 12 at a time. “The place is mind-blowing,” says photographer Alastair Philip Wiper, who visited the shipyard for WIRED on the eve of the departure of the ninth Triple-E class container vessel, the Matz Maersk. “This is just a small part of what they’re doing. They have 46,000 people building around 100 vessels – and everywhere you look there’s some surreal part of a ship that’s just about recognisable as something that should be underwater.”

Twenty Triple-E class container ships have been commissioned by Danish shipping company Maersk Lines for delivery by 2015. The vessels will serve ports along the northern-Europe-to-Asia route, many of which have had to expand to cope with the ships’ size. “You don’t feel like you’re inside a boat, it’s more like a cathedral,” Wiper says. “Imagine this space being full of consumer goods, and think about how many there are on just one ship. Then think about how many are sailing round the world every day. It’s like trying to think about infinity.”

Each Triple-E class vessel is 59 metres at its widest point, three metres wider than the previous largest vessel, the E-class Emma Maersk. A U-shaped hull design allows more room below deck, providing capacity for 18,000 six metre shipping containers arranged in 23 rows – enough space to transport 864 million bananas. The Triple-E is constructed from 425 pre-fabricated segments, making up 21 giant “megablock” cross sections. Most of the 955,250 litres of paint used on each ship is in the form of an anti- corrosive epoxy, pre-applied to each block. Finally, a polyurethane topcoat of the proprietary Maersk brand colour, “Hardtop AS-Blue 504”, is sprayed on.

A technician operates the steel grit blaster. Each piece of hull is blasted to remove imperfections before painting.

Engine: The total power output of each engine is 30,000kW, giving the vessel a top speed of 23 knots (41kph).

Engine Room: The two engines will generate 50 per cent less CO2 per container than the average for the Europe-Asia route.

This front section comprises only the lower half of a Triple-E’s total height of 73m – if it were placed next to the London Eye, it would reach about halfway up. With 14.5m of this lying below the waterline, the vessels are outside the Panama Canal’s current draught restrictions, but fall within the requirements of the Suez Canal, through which they’re designed to pass.

The Triple-E has a twin-skeg propulsion system, meaning that it uses two engines and two four-blade propellers, as opposed to the more common single six-blade propeller of the Emma Maersk. Each propeller extends 9.8 metres in diameter and is powered by an ultra-long stroke engine. This delivers slower speeds to maximise efficiency. The propellers are made at Mecklenburger Metallguss GmbH in Germany and weigh 70 tonnes apiece.

Underside: The lower half is covered with red-brown anti-fouling paint to stop sea debris from accumulating on the hull.

Over 500km of electrical cable supplies power around the ship and connects the bridge to critical systems.

Lars Peter Jensen, captain of the Matz Maersk, has served on four of the ships that were previously the world’s largest.

POSTED: 1/09/14 10:41 AM



Impending kOS

18 October 2014 - 7:00pm

It began badly. We were walking along the South Downs Way in early summer, the sun glittering on the English Channel on our right, the Weald of Sussex stretching away to our left. “How big,” asked Arthur, “should a text editor be?”

I’ve known Whitney most of my life. I know what he does. I know his stupid questions. And still I can’t resist trying to give helpful answers. “I don’t know. One could find out, surely? What do Emacs and Vim weigh – tens of megabytes?”

“I’ve got a text editor in four lines of K. Just need to add Copy and Paste.”

Ah, we’re back to that. Of course. K is the language part of kdb+, Arthur’s frighteningly fast column-store database, used by trading rooms to handle huge real-time data flows from financial exchanges. It started off at Morgan Stanley in the 1980s as an APL stripped for speed and became A+[1], and for two decades the bank’s development environment for trading applications. For the last twenty years it has evolved as kdb+, trading as Kx Systems, Inc.[2] It’s a two-orders-of-magnitude sort of thing: two orders of magnitude faster than industry-standard database, two orders of magnitude smaller code volume. Four lines of K equate to about four hundred lines of C.

The kdb+ interpreter is tiny: about 100Kb. (And yes, kdb+ programs are interpreted, not compiled.) As the code base improved, kdb+ releases became faster – and smaller. Kdb+ has sharp elbows. Impatient with the speed of Windows, kdb+ wins a ×3 performance improvement by managing memory itself.

Whitney is no respecter of rules. One of the scariest things I ever did as a young man was following him through central Toronto on a bicycle.

An apocryphal story. At the first of the three universities he claims to have been thrown out of, Whitney’s class was given an assignment: write a program that will print the most successive prime numbers possible with limited CPU time and limited green-striped paper. (Yes, that long ago.) His solution won by a handsome margin and was disqualified on two counts. In the first place he had ignored everything the class had been taught about modularisation and code re-use. He just wrote code optimised to solve one problem spectacularly fast. He had also noticed the problem did not specify printing spaces between the primes. The printouts were a sea of ink. And his code looked like woodgrain.

As a rule, it was the fittest who perished; the misfits,
Forced by failure to emigrate into unsettled niches,
Who altered their structure and prospered.
— WH Auden

Kdb+ is a testament to the rewards available from finding the right abstractions. K programs routinely outperform hand-coded C. This is of course, impossible, as The Hitchhiker’s Guide to the Galaxy likes to say. K programs are interpreted into C. For every K program there is a C program with exactly the same performance. So how do K programs beat hand-coded C? As Whitney explained at the Royal Society in 2004, “It is a lot easier to find your errors in four lines of code than in four hundred.”

What would computing be like if it were all done this way? The decades-long sleigh-ride of Moore’s Law[3] has ended. What if we could get another two orders of magnitude of performance out of the hardware?

This question has been asked before, notably by Alan Kay at the Viewpoints Research Institute.[4]

Whitney means to find out. The first phase of the project is to escape the bloated embrace of the operating systems and run kdb+ on the bare metal.

“If you keep on chipping at that rust, eventually you’ll reach flat, bright metal.” Herman Wouk, The Caine Mutiny

Whitney started replacing calls to Linux, working, alone as always, in his garage office. Characteristically, it’s a simple workplace: a pool table, a desk, a chair and a PC with a single monitor. When I saw it in 2007 it was running Windows XP and had five windows open: two MS-DOS and three Notepad. Brutally simple IDE. Doubtless things have improved since.

Oleg and Pierre had heard of Whitney and kdb+. They study computer science in St Petersburg. (Russia, not Florida.) With a great deal of trepidation and some support from a teacher they wrote asking Whitney what he was doing. He replied with some C code he was working on.

Everyone knows how C programs look: tall and skinny. Whitney’s don’t. I first encountered them in the 1980s. I was working for I.P. Sharp Associates in Sydney. My boss wanted to port the SHARP APL interpreter onto the fast new Hewlett-Packard HP1000 minicomputer. I recommended Whitney, then the youngest member of the IPSA systems-programming team, for the job. (Probably the best thing I’ve done in my professional life.)

There was, of course, a catch. The interpreter was a 500Kb program developed over 15 years and supported by an 11-man team. The original language had been considerably extended – most recently with ‘general’ or ‘nested’ arrays – and all the extensions had to be ported too. Although the target machine was attractively fast, most of the speed disappeared for programs larger than 80Kb. The interpreter had not just to be ported, but also made six times smaller. Game over?

Whitney’s strategy was to implement a core of the language – including the bits everyone thought most difficult, the operators and nested arrays – and use that to implement the rest of the language. The core was to be written in self-expanding C. As far as I know, the kdb+ interpreter is built the same way.

Unlike the tall skinny C programs in the textbooks, the code for this interpreter spills sideways across the page. It certainly doesn’t look like C.

In Sydney we assigned Whitney two coding assistants. Not that he needed or wanted help, but when he eventually left we’d need some idea how it all worked. His assistants had a very hard time. They would struggle through the week, get their assignments half finished, then on Monday discover Whitney had dropped in over the weekend, rewritten most of the interpreter, and included their assignments. (The interpreter got finished. A decade later I saw one of the HP machines still running on Westpac’s trading floor. Not long after that, Whitney started work at Morgan Stanley on what became A+.)

Whitney sent Oleg and Pierre some of the C code he was working on, and notes on a problem he didn’t know how to solve. They emailed back a solution, coded in his style. A partnership was born: a garage in California, a school in Russia.

Whitney demonstrated his “research K interpreter” at the Iverson College meeting[5] in Cambridge in 2011. We had visitors from Microsoft Research. The performance was impressive as always. The tiny language, mostly familiar-looking to the APL, J and q programmers participating, must have impressed the visitors. Perhaps conscious that with the occasional wrong result from an expression, the interpreter could be mistaken for a post-doctoral project, Whitney commented brightly, “Well, we sold ten million dollars of K3 and a hundred million of K4, so I guess we’ll sell a billion dollars worth of this.”

Someone asked about the code base. “Currently it’s 247 lines of C.” Some expressions of incredulity. Whitney displayed the source, divided between five text files so each would fit entirely on his monitor. “Hate scrolling,” he mumbled.

At Iverson College in 2013 he demonstrated the new graphics layer, z – 9Kb of code to replace the X Windows system. For the first time we saw the kOS desktop, solid black with a Tolkienesque legend top left: one system/all devices. Arrayed on the right edge, the icons of five kOS apps. He launched the text editor app and then wrote a new one, working out the key callbacks in front of us and explaining them as he worked. As he defined each callback the new app acquired it: no compile, load, install cycle. In eight lines of K he had replicated the core function of Notepad. At this point, with the new z layer in place, kOS weighed 62Kb.

Last autumn the kOS team recruited a fourth member, Geo, and in November announced it had removed the last connection to Linux. kOS was running on bare metal. Whitney announced the project would now go dark and return, perhaps in the summer of 2014, with a platform on which apps can be built.

kOS is coming.[6] Nothing will be the same afterwards.

  1. http://www.aplusdev.org
  2. http://www.kx.com
  3. http://www.en.wikipedia.org/wiki/Moore's_law
  4. http://www.vpri.org/pdf/tr2007008_steps.pdf
  5. http://www.sites.google.com/site/iversoncollege
  6. http://www.kparc.com

 

Gnome developer creates new animated image format

18 October 2014 - 7:00pm

It might seem like the GIF format is the best we’ll ever see in terms of simple animations. It’s a quite interesting format, but it doesn’t come without its downsides: quite old LZW-based compression, a limited color palette, and no support for using old image data in new locations.

Two competing specifications for animations were developed: APNG and MNG. The two camps have fought wildly and we’ve never gotten a resolution, and different browsers support different formats. So, for the widest range of compatibility, we have just been using GIF… until now.

I have developed a new image format which I’m calling “XNG”, which doesn’t have any of these restrictions, and has the possibility to support more complex features, and works in existing browsers today. It doesn’t require any new features like <canvas> or <video> or any JavaScript libraries at all. In fact, it works without any JavaScript enabled at all. I’ve tested it in both Firefox and Chrome, and it works quite well in either. Just embed it like any other image, e.g. <img src="myanimation.xng">.

It’s magic.

Have a few examples:

I’ve been looking for other examples as well. If you have any cool videos you’d like to see made into XNGs, write a comment and I’ll try to convert it. I wrote out all of these XNG files out by hand.

Over the next few days, I’ll talk a bit more about XNG. I hope all you hackers out there look into it and notice what I’m doing: I think there’s certainly a lot of unexplored ideas in what I’ve developed. We can push this envelope further.

. Bookmark the

.

Doctors Tell All, and It’s Bad

18 October 2014 - 7:00pm

A crop of books by disillusioned physicians reveals a corrosive doctor-patient relationship at the heart of our health-care crisis.  

Kevin Van Aelst

For someone in her 30s, I’ve spent a lot of time in doctors’ offices and hospitals, shivering on exam tables in my open-to-the-front gown, recording my medical history on multiple forms, having enough blood drawn in little glass tubes to satisfy a thirsty vampire. In my early 20s, I contracted a disease that doctors were unable to identify for years—in fact, for about a decade they thought nothing was wrong with me—but that nonetheless led to multiple complications, requiring a succession of surgeries, emergency-room visits, and ultimately (when tests finally showed something was wrong) trips to specialists for MRIs and lots more testing. During the time I was ill and undiagnosed, I was also in and out of the hospital with my mother, who was being treated for metastatic cancer and was admitted twice in her final weeks.

As a patient and the daughter of a patient, I was amazed by how precise surgery had become and how fast healing could be. I was struck, too, by how kind many of the nurses were; how smart and involved some of the doctors we met were. But I was also startled by the profound discomfort I always felt in hospitals. Physicians at times were brusque and even hostile to us (or was I imagining it?). The lighting was harsh, the food terrible, the rooms loud. Weren’t people trying to heal? That didn’t matter. What mattered was the whole busy apparatus of care—the beeping monitors and the hourly check-ins and the forced wakings, the elaborate (and frequently futile) interventions painstakingly performed on the terminally ill. In the hospital, I always felt like Alice at the Mad Hatter’s tea party: I had woken up in a world that seemed utterly logical to its inhabitants, but quite mad to me.

Roughly 15 in 100 cardiopulmonary resuscitations result in a patient living long enough to be discharged from the hospital.

In my own case, it took doctors a long time (roughly 15 years) to recognize exactly what was wrong with me. Along the way, my blood work was at times a little off, or my inflammation markers and white-blood-cell counts were slightly elevated, but nothing seemed definitive, other than some persistent anemia. “Everything’s probably okay,” the doctors would say, or “You have an idiopathic problem,” which is doctor-talk for “We don’t know why you suddenly have hives every day.” They never implied that I was crazy, or seeking attention, or any of the other things you sometimes hear from patients (especially female ones) who have sought a diagnosis for years on end. At the same time, they didn’t believe anything was wrong enough to pursue; frequently they asked whether I was depressed before even doing a physical exam.

To them, I was a relatively fit, often high-functioning young woman who had a long list of “small” complaints that only occasionally swelled into an acute problem, for which a quick surgical fix was offered (but no reflection on what might be causing it). To me, my life was slowly dissolving into near-constant discomfort and sometimes frightening pain—and terror at losing control. I didn’t know how to speak to the doctors with the words that would get them, as I thought of it, “on my side.” I steeled myself before appointments, vowing not to leave until I had some answers—yet I never managed to ask even half my questions. “You’re fine. We can’t find anything wrong,” more than one doctor said. Or, unforgettably, “You’re probably just tired from having your period.”

In fact, something was very wrong. In the spring of 2012, a sympathetic doctor figured out that I had an autoimmune disease no one had tested me for. And then, one crisp fall afternoon last year, I learned that I had Lyme disease. (I had been bitten by multiple ticks in my adolescence, a few years before I started having symptoms, but no one had ever before thought to test me thoroughly for Lyme.) Until then, facing my doctors, I had simply thought, What can I say? Perhaps they’re right. They’re the doctors, after all.

But this essay isn’t about how I was right and my doctors were wrong. It’s about why it has become so difficult for so many doctors and patients to communicate with each other. Ours is a technologically proficient but emotionally deficient and inconsistent medical system that is best at treating acute, not chronic, problems: for every instance of expert treatment, skilled surgery, or innovative problem-solving, there are countless cases of substandard care, overlooked diagnoses, bureaucratic bungling, and even outright antagonism between doctor and patient. For a system that invokes “patient-centered care” as a mantra, modern medicine is startlingly inattentive—at times actively indifferent—to patients’ needs.

To my surprise, I’ve now learned that patients aren’t alone in feeling that doctors are failing them. Behind the scenes, many doctors feel the same way. And now some of them are telling their side of the story. A recent crop of books offers a fascinating and disturbing ethnography of the opaque land of medicine, told by participant-observers wearing lab coats. What’s going on is more dysfunctional than I imagined in my worst moments. Although we’re all aware of pervasive health-care problems and the coming shortage of general practitioners, few of us have a clear idea of how truly disillusioned many doctors are with a system that has shifted profoundly over the past four decades. These inside accounts should be compulsory reading for doctors, patients, and legislators alike. They reveal a crisis rooted not just in rising costs but in the very meaning and structure of care. Even the most frustrated patient will come away with respect for how difficult doctors’ work is. She may also emerge, as I did, pledging (in vain) that she will never again go to a doctor or a hospital.

Spend a day in an emergency room, and chances are you’ll be struck by two things: the organizational chaos and the emotional detachment as nurses, doctors, and administrators bustle in and out, barely registering the human distress it is their job to address. The same could be said of our oddly bloodless debates about the future of health care. The rhetoric of medical reform draws mostly on economics: Experts differ over, among other things, how to structure “insurance mandates” and what constitutes “overutilization” of a rapidly expanding array of high-tech procedures and diagnostic tests. They argue about why “the United States health care system is the most expensive in the world,” as a 2014 Commonwealth Fund report finds, yet consistently “underperforms relative to other countries on most dimensions of performance.” (Currently, according to that report, the U.S. ranks last among 11 major industrialized nations in efficiency, equity, and “healthy lives,” meaning health outcomes attributable to medical care.)

But the actual experience for patients and doctors of navigating offices, clinics, hospitals—and each other’s company—rarely enters the discussion. Nor is there any effort to focus on the deeper reality of disease, as Atul Gawande, a surgeon and professor at Harvard Medical School, writes in his astute new exploration of geriatric medicine, Being Mortal. This absence matters, because how patients feel about their medical interactions really does influence the efficacy of the care they receive, and doctors’ emotions about their work in turn influence the quality of the care they provide. Despite our virtuosic surgical capacities, our cutting-edge technology, and our pharmaceutical advances, the patient-doctor relationship is still the heart of medicine. And it has eroded terribly. Terrence Holt, a geriatric specialist at the University of North Carolina at Chapel Hill, describes the situation in Internal Medicine, fictional fables based on his residency:

Any patient in a hospital, when we take their clothes away and lay them in a bed, starts to lose identity; after a few days, they all start to merge into a single passive body, distinguishable … only by the illnesses that brought them there.

The subjective experience of illness has always been all but impossible to convey. But systemic changes have intensified a disconnect between patients and doctors that was less glaring some 40 years ago, before technological advances and corporatization began to transform the comparatively low-tech, localized postwar medical system. The broad contours of the situation are familiar. Health care in the United States operates predominantly on a fee-for-service basis, which rewards doctors for doing as much as possible, rather than for offering the best care possible. This didn’t matter much in the 1950s, when a general practitioner coordinated most of your care and not many treatment options existed. But sophisticated new surgical techniques, and tools like the CT scan and the MRI, led to a surge in high-tech specialization. Rising costs in the 1970s were the catalyst for “managed care”—basically, our current system, in which insurance companies like Aetna and United Healthcare negotiate with networks of doctors to determine how much care patients get, whom we can see, and at what price. But along with new checks and balances came added bureaucracy, and frustrated doctors and patients. Comprehensive oversight has never been in shorter supply, as specialized “consults” proliferate and no one gets paid to coordinate care (problems the Affordable Care Act aims to fix).

In Doctored: The Disillusionment of an American Physician, Sandeep Jauhar—a cardiologist who previously cast a cold eye on his medical apprenticeship in Intern—diagnoses a midlife crisis, not just in his own career but in the medical profession. Today’s physicians, he tells us, see themselves not as the “pillars of any community” but as “technicians on an assembly line,” or “pawn[s] in a money-making game for hospital administrators.” According to a 2012 survey, nearly eight out of 10 physicians are “somewhat pessimistic or very pessimistic about the future of the medical profession.” In 1973, 85 percent of physicians said they had no doubts about their career choice. In 2008, only 6 percent “described their morale as positive,” Jauhar reports. Doctors today are more likely to kill themselves than are members of any other professional group.

The demoralized insiders-turned-authors are blunt about their daily reality. The biggest problem is time: the system ensures that doctors don’t have enough of it. To rein in costs, insurance companies have set fees lower and lower. And because doctors tend to get reimbursed at higher rates when they are in a network (hospitals and large physician groups have more leverage with insurance companies), many work for groups that require them to cram in a set number of patients a day. Hence the eight-minute appointments we’re all familiar with. Paperwork compounds the time crunch. Studies estimate that today’s doctors and “hospitalists”—medical practitioners who do most of their work in hospitals—spend just 12 to 17 percent of their day with patients. The rest of the time is devoted to processing forms, reviewing lab results, maintaining electronic medical records, dealing with other staff. Physicians in non-hospital medical practices in the U.S. “spend ten times as many hours on nonclinical administrative duties” as their Canadian counterparts do, Danielle Ofri, an internist at New York’s Bellevue Hospital, reports in What Doctors Feel.

Physicians joke that Latina/Latino patients suffer from “Hispanic Hysterical Syndrome.”

So doctors are busy, busy, busy—which spells trouble. Jauhar cites a prominent doctor’s adage that “One cannot do anything in medicine well on the fly,” and Ofri agrees. Overseeing 40-some patients, “I was practicing substandard medicine, and I knew it,” she writes. Jauhar notes that many doctors, working at “hyperspeed,” are so uncertain that they call in specialists just to “cover their ass”—hardly a cost-saving strategy. Lacking the time to take thorough histories or apply diagnostic skills, they order tests not because they’ve carefully considered alternative approaches but to protect themselves from malpractice suits and their patients from the poor care they’re offering them. (And, of course, tests are often lucrative for hospitals.)

There is also a more perverse upshot: stressed doctors take their frustrations out directly on patients. “I realize that in many ways I have become the kind of doctor I never thought I’d be,” Jauhar writes: “impatient, occasionally indifferent, at times dismissive or paternalistic.” (He also comes clean about a time when, struggling to live in New York City on his salary, he packed an already frenetic schedule with dubious moonlighting jobs—at a pharmaceutical company that flacked a questionable drug and with a cynical cardiologist who was bilking the system—which only further sapped his morale.) In The Good Doctor: A Father, a Son, and the Evolution of Medical Ethics, Barron H. Lerner, a bioethicist as well as a doctor, recalls admitting in the journal he kept during medical school, “I was angry at my patients.” In The Doctor Crisis, co-written with Charles Kenney, Jack Cochran, a plastic surgeon who worked his way up to executive director of the Permanente Federation, describes touring many clinics where he found “physician after physician” who was “deeply unhappy and often angry.” At times the hostility is barely repressed. Terrence Holt overhears an intern call her patient a “whiner.” Routinely, these writers witness physicians joking that Latina/Latino patients suffer from “Hispanic Hysterical Syndrome” or referring to obese patients as “beached whales.”

The alarming part is how fast doctors’ empathy wanes. Studies show that it plunges in the third year of medical school; that’s exactly when initially eager and idealistic students start seeing patients on rotation. The problem, Danielle Ofri writes, isn’t some elemental Hobbesian lack of sympathy; students (like the doctors they will become) are overworked and overtired, and they realize that there is too much work to be done in too little time. And because the medical-education system largely ignores the emotional side of health care, as Ofri emphasizes, doctors end up distancing themselves unthinkingly from what they are seeing. One of her anecdotes suggests what they’re up against: an intern, handed a dying baby whose parents don’t want to see her, is curtly told to note the infant’s time of death; with no empty room in sight, the doctor slips into a supply closet, torn between keeping an eye on her watch and soothing the baby. “It’s no wonder that empathy gets trounced in the actual world of clinical medicine,” Ofri concludes; empathy gets in the way of what doctors need to survive.

Yet empathy is anything but a frill: not only is it crucial to doctors’ humanity and patients’ dignity, it can be key to medical efficacy. The rate of severe diabetes complications in patients of doctors who rate high on a standard empathy scale, Ofri notes, is a remarkable 40 percent lower than in patients with low-empathy doctors. “This is comparable,” she points out, “to the benefits seen with the most intensive medical therapy for diabetes.”

You may be wondering why the rise of patients’ rights in the 1970s and ’80s, hailed as a revolutionary advance in health care, hasn’t served us better. After all, empowered by both the law and the Internet, we are far more conversant with our medical options—and with the history of medical hubris—than our grandparents were. Yet the legal recalibration of power has unintentionally contributed to the uneasy standoff between doctors and patients, as Barron Lerner observes in The Good Doctor. Lerner and his father, whom he followed into medicine, both staked their careers on the belief that the patient comes first. Their experience of medicine and their ideas about patient care, though, are starkly different. The elder Lerner practiced in an era when doctors unilaterally decided the treatment and often lied to patients about their prognoses. (Knowing you were dying was considered unhealthy.) At its most egregious extreme, medical paternalism led to unnecessary surgeries (among them, disfiguring radical mastectomies) and unethical research on unknowing subjects, as in the Tuskegee syphilis experiment.

Today, in the younger Lerner’s era, patient and doctor theoretically have a more collaborative relationship, based on informed consent. We take for granted that doctors will tell us our diagnosis and proceed according to carefully delineated protocols. This is a real advance, yet it is only part of the story. As Lerner comes to see, some of the overtreatment routinely found in hospitals is actually an outgrowth of the patients’-rights movement. In the past, when patients’ hearts stopped, or the terminally ill succumbed to infection, doctors typically would let them go. In our era of “defensive medicine,” unless you have signed a “do not resuscitate” order (and sometimes even if you have, but your family insists on treatment), you’ll be intubated, or defibrillated, or given antibiotics—on the off chance that last-ditch rescue is what you would want. And no doctor is likely to clarify the odds: roughly 15 in 100 cardiopulmonary resuscitations, for example, result in the patient living long enough to be discharged from the hospital.

“Any patient in a hospital, when we take their clothes away and lay them in a bed, starts to lose identity.”

But there is a deeper issue here, a collision of unarticulated needs and fears. Doctors have seen their power eroded—by insurance companies, by national treatment guidelines, by hospital bureaucracy—and now they have to deal with patients who feel newly empowered. Patients, meanwhile, want both clout and comfort; they feel both defiant and dependent. And so each side exercises power passively (or passive-aggressively), and maybe even unconsciously: I’ll listen to you, but I won’t really believe or act on what you say. All of which is a reminder that even with the rise of the malpractice threat, physicians and institutions continue to wield extensive medical power, just in subtler ways. I’ve heard many stories of hospitalized patients in pain yet worried that asking for more Dilaudid will be construed as entitled meddling.

To be sure, deciding who has the ultimate authority is a challenge: the patient, unlike the customer, can’t always be right, though few of us want to hear that. How far should doctors go to look for an illness they can’t initially find? To what degree should they privilege patients’ wishes for specific interventions? Satisfying answers to these questions have yet to be found. But the current balance of power is flawed. Each time I had surgery, I had to push for what seemed like a basic right—having a family member with me as I came to. I still remember trying to tell a nurse, my brain blurred by a waning anesthetic, that research proved the pain-reducing benefits of holding a loved one’s hand. A study, I figured, would carry more force than my need.

Without being fully aware of it, what I really wanted all along was a doctor trained in a different system, who understood that a conversation was as important as a prescription; a doctor to whom healing mattered as much as state-of-the-art surgery did. What I was looking for, it turns out, was a doctor like Victoria Sweet, and the kind of care offered in, of all places, a charity hospital in San Francisco. A doctor who is able to slow down, aware of the dividends not just for patients but for herself and for the system: this is the sort of doctor Sweet discovered she could be in “the last almshouse in America,” as she calls Laguna Honda Hospital, a funky old facility for the destitute and chronically ill, where swallows flew through open turrets and 1,200 patients lay mostly in old-fashioned “open wards,” and where she worked for 20-some years. In her remarkable memoir, God’s Hotel, Sweet—who is also a historian of medicine versed in the medical work of the 12th-century nun Hildegard of Bingen—calls her radical solution for our sped-up health care “slow medicine.” Here is a doctor saying what patients intuitively know: being sick is draining, healing takes time, and strong medicine often has strong side effects.

Granted a capacious amount of time and freedom with her severely ill patients (many of them drug addicts, schizophrenics, or elderly and with few resources), Sweet is able to make diagnoses that her patients’ previous doctors missed. Relying on close observation to help her understand what’s really going on, she weans them from an average of 20 medications to six or seven. She finds that discarded medical practices—for example, manipulating the lymphatic system with an old-fashioned medical girdle—may have more to offer than contemporary interventions do. In one heartbreaking case, she realizes that an elderly patient is not suffering from Alzheimer’s following a hip surgery, as doctors at the woman’s former hospital concluded—a diagnosis that led to antipsychotic medicines, her removal from her own home, and her separation from her mentally disabled daughter. Rather, she is in pain: the hip had slid out of place, and no one responsible for her follow-up care had noticed.

Laguna Honda—where meals were served in sunlit rooms, and gardening and good company allowed hopeless cases to make seemingly miraculous recoveries—seems out of another era. Indeed, in 2010, after years of construction and renovations, it became a “modern” facility. But “slow medicine,” as Sweet trenchantly argues, isn’t an outmoded, soulful indulgence. It might actually be a form of efficiency: more-accurate diagnoses and effective low-tech treatments help the system save money, and result in fewer malpractice suits.

Atul Gawande suggests much the same thing in Being Mortal, arguing that fast, solution-oriented care—particularly in the last year of life, which accounts for an estimated one-quarter of Medicare expenditures—has, in missing the broader picture, led to a great deal of “callousness, inhumanity, and extraordinary suffering.” In The Doctor Crisis, which issues a biting call for a physician-led revolution in medicine, Jack Cochran, too, appreciates a core tenet of the slow-medicine spirit: fulfilled doctors make for more-satisfied patients. Tackling the problems of Kaiser Permanente’s Colorado medical group, he took the counterintuitive step of demoting “patient-centered care” as a goal, and elevated “preservation and enhancement of career” for doctors to first place. He restored to them the sense that their work is, as Barron Lerner’s old-fashioned father put it, a “rare privilege” to be pursued with a sense of responsibility, rather than harried accountability.

Medicine today values intervention far more than it values care. Gawande writes that for a clinician, “nothing is more threatening to who you think you are than a patient with a problem you cannot solve.” The result is that all too often, “medicine fails the people it is supposed to help.” The old doctor-knows-best ethos was profoundly flawed. But it was rooted in an ethic of care for the whole person, perhaps because physicians, less pressed for time, knew their patients better. Danielle Ofri notes that it was the paternalistic old doctors, still hanging around her medical school wearing “starched shirts [and] conservative ties,” who taught her the art of respecting her patients’ individuality: “For them, approaching the bedside of a patient was a sacred act.” One day she had a class with an intimidating cardiothoracic surgeon. To her surprise, he was as tender toward his wards as he was gruff toward his students, who, he insisted, should always seat themselves at the level of the patient or lower. “They are the ones who are sick,” he emphasized, “and they are the ones running this interview, not you.”

In the course of our lives, most of us will urgently need care, sometimes when we least expect it. Currently, we must seek it in a system that excels at stripping our medical shepherds of their humanity, leaving them shells of the doctors (and people) they want to be, and us alone in the sterile rooms they manage. What makes our predicament so puzzling, and what may offer hope, is that nearly all of us want a different outcome. I used to think that change was necessary for the patient’s sake. Now I see that it’s necessary for the doctor’s sake, too.

What we give away when we log on to a public Wi-Fi network

18 October 2014 - 7:00pm
What we give away when we log on to a public Wi-Fi network

4 days ago

We took a hacker to a café and, in 20 minutes, he knew where everyone else was born, what schools they attended, and the last five things they googled.

Correspondent Technology & Surveillance

Illustration: Esther Aarts

In his backpack, Wouter Slotboom, 34, carries around a small black device, slightly larger than a pack of cigarettes, with an antenna on it. I meet Wouter by chance at a random café in the center of Amsterdam. It is a sunny day and almost all the tables are occupied. Some people talk, others are working on their laptops or playing with their smartphones.

Wouter removes his laptop from his backpack, puts the black device on the table, and hides it under a menu. A waitress passes by and we ask for two coffees and the password for the WiFi network. Meanwhile, Wouter switches on his laptop and device, launches some programs, and soon the screen starts to fill with green text lines. It gradually becomes clear that Wouter’s device is connecting to the laptops, smartphones, and tablets of local cafe visitors.

On his screen, phrases like “iPhone Joris” and “Simone’s MacBook” start to appear. The device’s antenna is intercepting the signals that are being sent from the laptops, smartphones, and tablets around us.

We learn that Joris had previously visited McDonald’s, probably spent his vacation in Spain, and had been kart-racing.

More text starts to appear on the screen. We are able to see which WiFi networks the devices were previously connected to. Sometimes the names of the networks are composed of mostly numbers and random letters, making it hard to trace them to a definite location, but more often than not, these WiFi networks give away the place they belong to.

We learn that Joris had previously visited McDonald’s, probably spent his vacation in Spain (lots of Spanish-language network names), and had been kart-racing (he had connected to a network belonging to a well-known local kart-racing center). Martin, another café visitor, had been logged on to the network of Heathrow airport and the American airline Southwest. In Amsterdam, he’s probably staying at the White Tulip Hostel. He had also paid a visit to coffee shop called The Bulldog.

Session 1:
Let everyone connect to our fake network

The waitress serves us our coffee and hands us the WiFi password. After Slotboom is connected, he is able to provide all the visitors with an internet connection and to redirect all internet traffic through his little device.

Most smartphones, laptops, and tablets automatically search and connect to WiFi networks. They usually prefer a network with a previously established connection. If you have ever logged on to the T-Mobile network on the train, for example, your device will search for a T-Mobile network in the area.

My phone automatically connects itself to one of these networks, which all belong to the black device.

Slotboom’s device is capable of registering these searches and appearing as that trusted WiFi network. To demonstrate, I suddenly see the name of my home network appear on my iPhone’s list of available networks, as well as my workplace, and a list of cafes, hotel lobbies, trains, and other public places I’ve visited. My phone automatically connects itself to one of these networks, which all belong to the black device.

Slotboom can also broadcast a fictitious network name, making users believe they are actually connecting to the network of the place they’re visiting. For example, if a place has a WiFi network consisting of random letters and numbers (Fritzbox xyz123), Slotboom is able to provide the network name (Starbucks). People, he says, are much more willing to connect to these.

We see more and more visitors log on to our fictitious network. The siren song of the little black device appears to be irresistible. Already 20 smartphones and laptops are ours. If he wanted to, Slotboom is now able to completely ruin the lives of the people connected: He can retrieve their passwords, steal their identity, and plunder their bank accounts. Later today, he will show me how. I have given him permission to hack me in order to demonstrate what he is capable of, though it could be done to anyone with a smartphone in search of a network, or a laptop connecting to a WiFi network.

Everything, with very few exceptions, can be cracked.

The idea that public WiFi networks are not secure is not exactly news. It is, however, news that can’t be repeated often enough. There are currently more than 1.43 billion smartphone users worldwideFind the latest numbers here and more than 150 million smartphone owners in the U.S. In the U.S., more than 92 million American adultsTablet numbers own a tablet and more than 155 millionThe census has numbers own a laptop. Each year the worldwide demand for more laptops and tablets increases. In 2013, an estimated 206 million tablets and 180 million laptops were sold worldwide. Probably everyone with a portable device has once been connected to a public WiFi network: while having a coffee, on the train, or at a hotel.

Everything, with very few exceptions, can be cracked.

The good news is that some networks are better protected than others; some email and social media services use encryption methods that are more secure than their competitors. But spend a day walking in the city with Wouter Slotboom, and you’ll find that almost everything and everyone connected to a WiFi network can be hacked. A studyRead the study here from threat intelligence consultancy, Risk Based Security, estimates that more than 822 million records were exposed worldwide in 2013, including credit card numbers, birth dates, medical information, phone numbers, social security numbers, addresses, user names, emails, names, and passwords. Sixty-five percent of those records came from the U.S. According to IT security firm Kaspersky Lab, in 2013 an estimated 37.3 million users worldwide and 4.5 million Americans were the victim of phishing—or pharming—attempts, meaning payment details were stolen from hacked computers, smartphones, or website users.

Report after report shows that digital identity fraud is an increasingly common problem. Hackers and cybercriminals currently have many different tricks at their disposal. But the prevalence of open, unprotected WiFi networks does make it extremely easy for them. The National Cyber ​​Security Center, a division of the Ministry of Security and Justice, did not issue the following advice in vain: “It is not advisable to use open WiFi networks in public places. If these networks are used, work or financial related activities should better be avoided.”

Slotboom calls himself an “ethical hacker,” or one of the good guys; a technology buff who wants to reveal the potential dangers of internet and technology. He advises individuals and companies on how to better protect themselves and their information. He does this, as he did today, usually by demonstrating how easy it is to inflict damage. Because really, it’s child’s play: The device is cheap, the software for intercepting traffic is very easy to use, and readily available for downloaded. “All you need is 70 Euros, an average IQ, and a little patience,” he says. I will refrain from elaborating on some of the more technical aspects, such as equipment, software, and apps needed to go about hacking people.

Session 2: Scanning for Names, Passwords and Sexual Orientation

Armed with Slotboom’s backpack, we move to a coffeehouse that is known for the beautiful flowers drawn in the foam of the lattes, and as a popular spot for freelancers working on laptops. This place is now packed with people concentrating on their screens.

Slotboom switches on his equipment. He takes us through the same steps, and within a couple of minutes, 20 or so devices are connected to ours. Again we see their Mac-addresses and login history, and in some cases their owners names. At my request, we now go a step further.

Slotboom launches another program (also readily available for download), which allows him to extract even more information from the connected smartphones and laptops. We are able to see the specifications of the mobile phone models (Samsung Galaxy S4), the language settings for the different devices, and the version of the operating system used iOS 7.0.5).

The latter can be extremely valuable information for a malicious hacker. If a device has an outdated operating system, for example, there are always known “bugs,” or holes in the security system that can be easily exploited. With this kind of information, you have what you need to break into the operating system and take over the device. A sampling of the coffeehouse customers reveals that none of the connected devices have the latest version of the operating system installed. For all these legacy systems, a known bug is listed online.

We see that one visitor has the gay dating app Grindr installed on his smartphone.

We can now see some of the actual internet traffic of those around us. We see that someone with a MacBook is browsing the site Nu.nl. We can see that many devices are sending documents using WeTransfer, some are connecting to Dropbox, and some show activity on Tumblr. We see that someone has just logged on to FourSquare. The name of this person is also shown, and, after googling his name, we recognize him as the person sitting just a few feet away from us.

Information comes flooding in, even from visitors who are not actively working or surfing. Many email programs and apps constantly make contact with their servers—a necessary step for a device to retrieve new emails. For some devices and programs, we are able to see what information is being sent, and to which server.

And now it’s getting really personal. We see that one visitor has the gay dating app Grindr installed on his smartphone. We also see the name and type of the smartphone he’s using (iPhone 5s). We stop here, but it would be a breeze to find out to who the phone belongs to. We also see that someone’s phone is attempting to connect to a server in Russia, sending the password along with it, which we are able to intercept.

Session 3: Checking out Studies, Hobbies and Relationship Problems

Many apps, programs, websites, and types of software make use of encryption technologies. These are there to ensure that the information sent and received from a device is not accessible to unauthorized eyes. But once the user is connected to Slotboom’s WiFi network, these security measures can be circumvented relatively easily, with the help of decryption software.

To our shared surprise, we see an app sending personal information to a company that sells online advertising. Among other things, we see the location data, technical information of the phone, and information of the WiFi network. We can also see the name (first and last) of a woman using the social bookmarking website,Delicious. Delicious allows users to share websites—bookmarks—they are interested in. In principle, the pages that users of Delicious share are available publicly, yet we can’t help feeling like voyeurs when we realize just how much we are able to learn about this woman on the basis of this information.

First we google her name, which immediately allows us to determine what she looks like and where in the coffeehouse she is sitting. We learn that she was born in a different European country and only recently moved to the Netherlands. Through Delicious we discover that she’s been visiting the website of a Dutch language course and she has bookmarked a website with information on the Dutch integration course.

In less than 20 minutes, here’s what we’ve learned about the woman sitting 10 feet from us: where she was born, where she studied and that she has an interest in yoga.

In less than 20 minutes, here’s what we’ve learned about the woman sitting 10 feet from us: where she was born, where she studied, that she has an interest in yoga, that she’s bookmarked an online offer for an anti-snore mantras, recently visited Thailand and Laos, and shows a remarkable interest in sites that offer tips on how to save a relationship.

Slotboom shows me some more hacker tricks. Using an app on his phone, he is able to change specific words on any website. For example, whenever the word “Opstelten” (the name of a Dutch politician) is mentioned, people see the word “Dutroux” (the name of a convicted serial killer) rendered on the page instead. We tested it and it works. We try another trick: Anyone loading a website that includes pictures gets to see a picture selected by Slotboom. This all sounds funny if you’re looking for some mischief, but it also makes it possible to load images of child pornography on someone’s smartphone, the possession of which is a criminal offense.

Password Intercepted

We visit yet another cafe. My last request to Slotboom is to show me what he would do if he wanted to really harm me. He asks me to go to Live.com (the Microsoft email site) and enter a random username and password. A few seconds later, the information I just typed appears on his screen. “Now I have the login details of your email account,” Slotboom says. “The first thing I would do is change the password of your account and to indicate to other services you use that I have forgotten my password. Most people use the same email account for all services. And those new passwords will then be sent to your mailbox, which means I will have them at my disposal as well.” We do the same for Facebook: Slotboom is able to intercept the login name and password I entered with relative ease.

Within 20 minutes he’s obtained the login details, including passwords for my Live.com, SNS Bank, Facebook, and DigiD accounts.

Another trick that Slotboom uses is to divert my internet traffic. For example, whenever I try to access the webpage of my bank, he has instructed his program to re-direct me to a page he owns: a cloned site that appears to be identical to the trusted site, but is in fact completely controlled by Slotboom. Hackers call this DNS spoofing. The information I entered on the site is stored on the server owned by Slotboom. Within 20 minutes he’s obtained the login details, including passwords for my Live.com, SNS Bank, Facebook, and DigiD accounts.

I will never again be connecting to an insecure public WiFi network without taking security measures.

Translated from Dutch by Jona Meijers. All names in this article are fictitious, except for Wouter Slotboom’s. We handled the intercepted data with the utmost care and erased it immediately after our last meeting.

So how can you safely use a public Wi-Fi network?

Now that we might've scared you, it's time for an alternative.

Read the measures that train passengers or patrons of sidewalk cafés can take to protect themselves

Maurits Martijn writes for De Correspondent, a Dutch-language online journalism platform that offers the kinds of stories that tend to escape the radar of mainstream media because they do not conform to what is normally understood to be ‘news’. We launched after raising a total of 1.7 million dollars with a crowd-funding campaign in 2013.

We will translate more articles. Like us to stay up to date:

About usLearn more

This article has been shared with you by correspondent Ernst-Jan Pfauth

About us Bedankt voor je interesse in dit verhaal!

Onze correspondenten delen ter kennismaking graag verhalen met je.

Onze correspondenten deelden deze maand al verhalen met je.

Lees je ze met plezier? Word dan lid, want we zijn als advertentievrij platform volledig afhankelijk van mensen zoals jij.

Meer dan 30.000 leden gingen je voor:

Lees verder What we give away when we log on to a public Wi-Fi network

4 days ago

We took a hacker to a café and, in 20 minutes, he knew where everyone else was born, what schools they attended, and the last five things they googled.

Correspondent Technology & Surveillance

Illustration: Esther Aarts

In his backpack, Wouter Slotboom, 34, carries around a small black device, slightly larger than a pack of cigarettes, with an antenna on it. I meet Wouter by chance at a random café in the center of Amsterdam. It is a sunny day and almost all the tables are occupied. Some people talk, others are working on their laptops or playing with their smartphones.

Wouter removes his laptop from his backpack, puts the black device on the table, and hides it under a menu. A waitress passes by and we ask for two coffees and the password for the WiFi network. Meanwhile, Wouter switches on his laptop and device, launches some programs, and soon the screen starts to fill with green text lines. It gradually becomes clear that Wouter’s device is connecting to the laptops, smartphones, and tablets of local cafe visitors.

On his screen, phrases like “iPhone Joris” and “Simone’s MacBook” start to appear. The device’s antenna is intercepting the signals that are being sent from the laptops, smartphones, and tablets around us.

We learn that Joris had previously visited McDonald’s, probably spent his vacation in Spain, and had been kart-racing.

More text starts to appear on the screen. We are able to see which WiFi networks the devices were previously connected to. Sometimes the names of the networks are composed of mostly numbers and random letters, making it hard to trace them to a definite location, but more often than not, these WiFi networks give away the place they belong to.

We learn that Joris had previously visited McDonald’s, probably spent his vacation in Spain (lots of Spanish-language network names), and had been kart-racing (he had connected to a network belonging to a well-known local kart-racing center). Martin, another café visitor, had been logged on to the network of Heathrow airport and the American airline Southwest. In Amsterdam, he’s probably staying at the White Tulip Hostel. He had also paid a visit to coffee shop called The Bulldog.

Session 1:
Let everyone connect to our fake network

The waitress serves us our coffee and hands us the WiFi password. After Slotboom is connected, he is able to provide all the visitors with an internet connection and to redirect all internet traffic through his little device.

Most smartphones, laptops, and tablets automatically search and connect to WiFi networks. They usually prefer a network with a previously established connection. If you have ever logged on to the T-Mobile network on the train, for example, your device will search for a T-Mobile network in the area.

My phone automatically connects itself to one of these networks, which all belong to the black device.

Slotboom’s device is capable of registering these searches and appearing as that trusted WiFi network. To demonstrate, I suddenly see the name of my home network appear on my iPhone’s list of available networks, as well as my workplace, and a list of cafes, hotel lobbies, trains, and other public places I’ve visited. My phone automatically connects itself to one of these networks, which all belong to the black device.

Slotboom can also broadcast a fictitious network name, making users believe they are actually connecting to the network of the place they’re visiting. For example, if a place has a WiFi network consisting of random letters and numbers (Fritzbox xyz123), Slotboom is able to provide the network name (Starbucks). People, he says, are much more willing to connect to these.

We see more and more visitors log on to our fictitious network. The siren song of the little black device appears to be irresistible. Already 20 smartphones and laptops are ours. If he wanted to, Slotboom is now able to completely ruin the lives of the people connected: He can retrieve their passwords, steal their identity, and plunder their bank accounts. Later today, he will show me how. I have given him permission to hack me in order to demonstrate what he is capable of, though it could be done to anyone with a smartphone in search of a network, or a laptop connecting to a WiFi network.

Everything, with very few exceptions, can be cracked.

The idea that public WiFi networks are not secure is not exactly news. It is, however, news that can’t be repeated often enough. There are currently more than 1.43 billion smartphone users worldwideFind the latest numbers here and more than 150 million smartphone owners in the U.S. In the U.S., more than 92 million American adultsTablet numbers own a tablet and more than 155 millionThe census has numbers own a laptop. Each year the worldwide demand for more laptops and tablets increases. In 2013, an estimated 206 million tablets and 180 million laptops were sold worldwide. Probably everyone with a portable device has once been connected to a public WiFi network: while having a coffee, on the train, or at a hotel.

Everything, with very few exceptions, can be cracked.

The good news is that some networks are better protected than others; some email and social media services use encryption methods that are more secure than their competitors. But spend a day walking in the city with Wouter Slotboom, and you’ll find that almost everything and everyone connected to a WiFi network can be hacked. A studyRead the study here from threat intelligence consultancy, Risk Based Security, estimates that more than 822 million records were exposed worldwide in 2013, including credit card numbers, birth dates, medical information, phone numbers, social security numbers, addresses, user names, emails, names, and passwords. Sixty-five percent of those records came from the U.S. According to IT security firm Kaspersky Lab, in 2013 an estimated 37.3 million users worldwide and 4.5 million Americans were the victim of phishing—or pharming—attempts, meaning payment details were stolen from hacked computers, smartphones, or website users.

Report after report shows that digital identity fraud is an increasingly common problem. Hackers and cybercriminals currently have many different tricks at their disposal. But the prevalence of open, unprotected WiFi networks does make it extremely easy for them. The National Cyber ​​Security Center, a division of the Ministry of Security and Justice, did not issue the following advice in vain: “It is not advisable to use open WiFi networks in public places. If these networks are used, work or financial related activities should better be avoided.”

Slotboom calls himself an “ethical hacker,” or one of the good guys; a technology buff who wants to reveal the potential dangers of internet and technology. He advises individuals and companies on how to better protect themselves and their information. He does this, as he did today, usually by demonstrating how easy it is to inflict damage. Because really, it’s child’s play: The device is cheap, the software for intercepting traffic is very easy to use, and readily available for downloaded. “All you need is 70 Euros, an average IQ, and a little patience,” he says. I will refrain from elaborating on some of the more technical aspects, such as equipment, software, and apps needed to go about hacking people.

Session 2: Scanning for Names, Passwords and Sexual Orientation

Armed with Slotboom’s backpack, we move to a coffeehouse that is known for the beautiful flowers drawn in the foam of the lattes, and as a popular spot for freelancers working on laptops. This place is now packed with people concentrating on their screens.

Slotboom switches on his equipment. He takes us through the same steps, and within a couple of minutes, 20 or so devices are connected to ours. Again we see their Mac-addresses and login history, and in some cases their owners names. At my request, we now go a step further.

Slotboom launches another program (also readily available for download), which allows him to extract even more information from the connected smartphones and laptops. We are able to see the specifications of the mobile phone models (Samsung Galaxy S4), the language settings for the different devices, and the version of the operating system used iOS 7.0.5).

The latter can be extremely valuable information for a malicious hacker. If a device has an outdated operating system, for example, there are always known “bugs,” or holes in the security system that can be easily exploited. With this kind of information, you have what you need to break into the operating system and take over the device. A sampling of the coffeehouse customers reveals that none of the connected devices have the latest version of the operating system installed. For all these legacy systems, a known bug is listed online.

We see that one visitor has the gay dating app Grindr installed on his smartphone.

We can now see some of the actual internet traffic of those around us. We see that someone with a MacBook is browsing the site Nu.nl. We can see that many devices are sending documents using WeTransfer, some are connecting to Dropbox, and some show activity on Tumblr. We see that someone has just logged on to FourSquare. The name of this person is also shown, and, after googling his name, we recognize him as the person sitting just a few feet away from us.

Information comes flooding in, even from visitors who are not actively working or surfing. Many email programs and apps constantly make contact with their servers—a necessary step for a device to retrieve new emails. For some devices and programs, we are able to see what information is being sent, and to which server.

And now it’s getting really personal. We see that one visitor has the gay dating app Grindr installed on his smartphone. We also see the name and type of the smartphone he’s using (iPhone 5s). We stop here, but it would be a breeze to find out to who the phone belongs to. We also see that someone’s phone is attempting to connect to a server in Russia, sending the password along with it, which we are able to intercept.

Session 3: Checking out Studies, Hobbies and Relationship Problems

Many apps, programs, websites, and types of software make use of encryption technologies. These are there to ensure that the information sent and received from a device is not accessible to unauthorized eyes. But once the user is connected to Slotboom’s WiFi network, these security measures can be circumvented relatively easily, with the help of decryption software.

To our shared surprise, we see an app sending personal information to a company that sells online advertising. Among other things, we see the location data, technical information of the phone, and information of the WiFi network. We can also see the name (first and last) of a woman using the social bookmarking website,Delicious. Delicious allows users to share websites—bookmarks—they are interested in. In principle, the pages that users of Delicious share are available publicly, yet we can’t help feeling like voyeurs when we realize just how much we are able to learn about this woman on the basis of this information.

First we google her name, which immediately allows us to determine what she looks like and where in the coffeehouse she is sitting. We learn that she was born in a different European country and only recently moved to the Netherlands. Through Delicious we discover that she’s been visiting the website of a Dutch language course and she has bookmarked a website with information on the Dutch integration course.

In less than 20 minutes, here’s what we’ve learned about the woman sitting 10 feet from us: where she was born, where she studied and that she has an interest in yoga.

In less than 20 minutes, here’s what we’ve learned about the woman sitting 10 feet from us: where she was born, where she studied, that she has an interest in yoga, that she’s bookmarked an online offer for an anti-snore mantras, recently visited Thailand and Laos, and shows a remarkable interest in sites that offer tips on how to save a relationship.

Slotboom shows me some more hacker tricks. Using an app on his phone, he is able to change specific words on any website. For example, whenever the word “Opstelten” (the name of a Dutch politician) is mentioned, people see the word “Dutroux” (the name of a convicted serial killer) rendered on the page instead. We tested it and it works. We try another trick: Anyone loading a website that includes pictures gets to see a picture selected by Slotboom. This all sounds funny if you’re looking for some mischief, but it also makes it possible to load images of child pornography on someone’s smartphone, the possession of which is a criminal offense.

Password Intercepted

We visit yet another cafe. My last request to Slotboom is to show me what he would do if he wanted to really harm me. He asks me to go to Live.com (the Microsoft email site) and enter a random username and password. A few seconds later, the information I just typed appears on his screen. “Now I have the login details of your email account,” Slotboom says. “The first thing I would do is change the password of your account and to indicate to other services you use that I have forgotten my password. Most people use the same email account for all services. And those new passwords will then be sent to your mailbox, which means I will have them at my disposal as well.” We do the same for Facebook: Slotboom is able to intercept the login name and password I entered with relative ease.

Within 20 minutes he’s obtained the login details, including passwords for my Live.com, SNS Bank, Facebook, and DigiD accounts.

Another trick that Slotboom uses is to divert my internet traffic. For example, whenever I try to access the webpage of my bank, he has instructed his program to re-direct me to a page he owns: a cloned site that appears to be identical to the trusted site, but is in fact completely controlled by Slotboom. Hackers call this DNS spoofing. The information I entered on the site is stored on the server owned by Slotboom. Within 20 minutes he’s obtained the login details, including passwords for my Live.com, SNS Bank, Facebook, and DigiD accounts.

I will never again be connecting to an insecure public WiFi network without taking security measures.

Translated from Dutch by Jona Meijers. All names in this article are fictitious, except for Wouter Slotboom’s. We handled the intercepted data with the utmost care and erased it immediately after our last meeting.

So how can you safely use a public Wi-Fi network?

Now that we might've scared you, it's time for an alternative.

Read the measures that train passengers or patrons of sidewalk cafés can take to protect themselves

Maurits Martijn writes for De Correspondent, a Dutch-language online journalism platform that offers the kinds of stories that tend to escape the radar of mainstream media because they do not conform to what is normally understood to be ‘news’. We launched after raising a total of 1.7 million dollars with a crowd-funding campaign in 2013.

We will translate more articles. Like us to stay up to date:

About usLearn more

This article has been shared with you by correspondent Ernst-Jan Pfauth

About us Bedankt voor je interesse in dit verhaal!

Onze correspondenten delen ter kennismaking graag verhalen met je.

Onze correspondenten deelden deze maand al verhalen met je.

Lees je ze met plezier? Word dan lid, want we zijn als advertentievrij platform volledig afhankelijk van mensen zoals jij.

Meer dan 30.000 leden gingen je voor:

Lees verder