Uranium Chemistry (2008) - <AUTHOR> https://carlwillis.wordpress.com/2008/02/20/uranium-chemistry/ <comment><USER2> > I add bleach, stir, and repeat, dodging the cloud of chlorine gas wafting > out of the bucket.

and he lived to write about it...

<comment><USER3> People freak out way too much over small amounts of chlorine and I don't know why, it's pretty irresponsible that he wasn't wearing a full face gasmask and all that said maybe his face melted off in the shower after he finished the blog post but all in all he seems to know what he's doing.

</comment></comment><comment><USER4> This entire blog is very interesting radiation-wise. Right on the front page it has nice photos of Chernobyl reactor, which are refreshing (mainstream pics are usually garbages of clothes/tables/etc, but this guy is addicted to tech and highlights devices and reactor rooms instead).

</comment><comment><USER5> Jeez, his back patio must be crazy radioactive.

For those at home, you probably don't want to be grinding up large quantities of uranium ore on your back porch with zero PPE and no cleanup methodology at all.

<comment><USER6> Uranium isn't all that radioactive, though.

<comment><USER7> Yeah. If it didn't have a half life of a billion years it wouldn't still be around for us to mine, and all things being equal radioactivity is inversely proportional to half life.

<comment><USER5> Uranium is an alpha decay emitter. While it won't make you (literally) glow in the dark, inhaling uranium dust is pretty toxic radiologically and can cause significant damage internally. In addition, it isn't great for you chemically.

When it decays, it also releases radon, which causes additional problems.

Are there worse things? Sure. Is it safe to be around Uranium dust? No.

[https://web.evs.anl.gov/uranium/guide/ucompound/health/index...](https://web.evs.anl.gov/uranium/guide/ucompound/health/index.cfm)

</comment></comment></comment></comment><comment><USER8> Doing this on the property of most nuclear laboratories would probably be considered an incident. If a nuclear physicist employed at a national lab or major university did this at home and was discovered they would probably lose their job. I just find it interesting that doing this is in some ways more accessible to the general public than to people who might have some reason to experiment with this without being nuclear chemists.

</comment><comment><USER9> ...because you never know when some yellowcake will come in handy?

In all seriousness - is there a practical application to producing uranium in one's kitchen?

<comment><USER10> You might wish to get into the pottery business. Uranium glazes give striking oranges and reds. If you are into decorative glass, uranium salts give beautiful yellow and green shades. And it's fluorescent!

<comment><USER6> It also apparently leaches out in contact with acidic foods.

<comment><USER7> Not good for a toxic heavy metal.

</comment></comment></comment></comment><comment><USER11> Just don't try to fly anywhere in the USA for a while after playing around with this stuff.

<comment><USER3> Actually Thunderf00t brought some Uranium on a plane back from the US and it was fine.

</comment></comment><comment><USER12> Is this a joke? "Go find an old uranium mine" and DIY high PH acid chemistry without precautions and proper equipment. Sounds totally safe. Beware of idiots reading this, making yellowcake and selling it to a regular Sheldon Cooper.

<comment><USER13> It reminds me of the 1950s science kit which advised kids to "follow in the footsteps of Madam Curie"

</comment></comment><comment><USER14> As a chemist I really enjoy this. It only gets scary where he details that you can buy HF hydrofluouric acid over the counter... That is interesting to say the least. Can't buy that anywhere here...

<comment><USER15> He didn't purchase lab grade HF, it's "just" commercial "Whink Rust Stain Remover". In all countries, buying customer chemical products is always a way to bypass the regulation and get otherwise hard-to-obtain chemicals, as long as you know where they can be found.

Though, selling chemicals in general is less regulated in the U.S, getting the same "Rust Stain Remover" in other parts of the world is certainly more difficult.

<comment><USER3> In certain countries getting Sodium Biflouride (such as from armor etch) is easier and it readily turns into HF. Of course you should however still obtain the relevant licences, in the UK this is the EAP licence and it lasts for 6 months and is fairly straightforward as long as you've never been convicted of a crime.

</comment></comment></comment><comment><USER16> Alternative title: how to get an FBI file just by visiting one webpage

<comment><USER17> How will the FBI know what websites I visit? Does HN sell them the onclick data?

<comment><USER3> From the NSA</comment></comment></comment>


Milvus – An Open-Source Vector Similarity Search Engine - <AUTHOR> https://milvus.io/ <comment><USER2> I'd be curious how they implement updating. AFAICT this is the thorniest part of working with existing open source solutions. When working with ANNOY in the past I've had data small enough to be able to recompute the full index in the background every few seconds in a background process and then swap in the built index to the process serving similarity queries.

(you can see the VERY "research quality" code on Github, here's a decent starting place [https://github.com/hyperstudio/spectacles/blob/master/specta...](https://github.com/hyperstudio/spectacles/blob/master/spectacles/nndb/server.py#L51))

EDIT: from the insertion docs [https://milvus.io/docs/guides/milvus_operation.md#Insert- vec...](https://milvus.io/docs/guides/milvus_operation.md#Insert-vectors-into- a-table) it seems that they still ask you to re-build your indices after you insert vectors, although in some cases they can tell that they need to re- build the indices for you. Looks like the major value adds here are potentially shifting computation to the GPU and building multiple indices. I'll certainly evaluate this next time I'm building a project around vector search.

<comment><USER3> Milvus allows users to append vectors. Vectors are stored in multiple file slices. When a file slice reaches the threshold, Milvus will build the index for that file slice, and new data will be inserted into a new file slice. For details, please refer [https://medium.com/@milvusio/managing-data-in-massive- scale-...](https://medium.com/@milvusio/managing-data-in-massive-scale-vector- search-engine-db2e8941ce2f)

We are now working on the vector deletion. Hopefully will be ready by the end of 1Q this year.

<comment><USER2> If I append a single new vector, will it show up in search results without me needing to ask for the index to be rebuilt? Can i update an existing vector without having to ask for the index to be rebuilt?

EDIT: from reading the linked article, it seems like newly inserted vectors will be queried using brute force. Very interesting idea!

<comment><USER3> Correct, new vectors will first be searched thru brute force until the index is created on that file slice.

</comment></comment></comment></comment><comment><USER4> Does anyone know how to combine vector similarity search with more conventional field-based search (using elasticsearch for example)? For example, given a set of labeled images, a user should be able to compose a query using a combination of filters (like size or description) along with a reference image (the vector).

<comment><USER3> We are working on this feature which allows use to perform hyper search (attributes plus feature vectors). And you can code your scoring rules.

Again, hopefully be ready by the end of 1Q this year.

</comment></comment><comment><USER5> Another option in this very interesting space is GNES[1], which attempts to do the encoding/decoding on its own, rather than just working with feature/embedding vectors.

[1] [https://gnes.ai/](https://gnes.ai/)

</comment><comment><USER6> There's not a lot of information on the site about the architecture or storage solutions used. Do the authors have more info about this space?

<comment><USER3> You may check our Medium site. We will post more tech details.

[https://medium.com/@milvusio](https://medium.com/@milvusio)

</comment></comment><comment><USER7> Great to see another ANN tool available. FAISS and SPTAG were good, but this appears to be much better. Not sure if this supports "online" learning i.e. is a training phase required?

<comment><USER3> Please check [https://medium.com/@milvusio/managing-data-in-massive- scale-...](https://medium.com/@milvusio/managing-data-in-massive-scale-vector- search-engine-db2e8941ce2f)

It explains how Milvus managing vectors.

<comment> ffast-math > "As each vector takes 2 KB space, the minimum storage space for 100 million > vectors is about 200 GB"

Why are you not quantizing the vectors when you insert them? Bolt [1] and Quicker-ADC [2] make 10-100x compression basically free for approximate search (and also get you ~100x compression roughly 10x faster querying within a partition....)

[1] [https://github.com/dblalock/bolt](https://github.com/dblalock/bolt)

[2] [https://github.com/technicolor-research/faiss- quickeradc](https://github.com/technicolor-research/faiss-quickeradc)

<comment><USER3> 200 GB is the size of original vectors. When creating index, Milvus supports IVF SQ8 and IVF PQ ADC.

Based on our users experience, SQ8 is the most balanced one at this moment. SQ8 provides 8x compression, higher accuracy and better performance.

</comment></comment></comment></comment><comment><USER8> What are good answers to this in the embedded space... eg mobile?

<comment><USER3> Milvus could run on arm CPU. We ported it to Nvidia Jetson NANO and Raspberry PI 4 (4GB mem) so far.

Most people told us running Milvus on arm looked cool but they were not sure if they want to do this...

Please tell us your requirements and scenarios on arm. It will really help.

</comment></comment><comment><USER9> any recommendation on the machine learning platforms to use?

<comment><USER3> It's not about the ML platform.

It's about the ML scenarios. If you want to search thru a huge amount of unstructured data after vectorization tech (like deep learning), Milvus will help you a lot.

Our users use Milvus in below scenarios: 1\. Chemical molecules analysis, searching SMILE format vectors 2\. Image retrieval type application, for example shopping website 3\. NLP 4\. Recommendation system 5\. and more, we are collecting users' feedback

</comment></comment><comment> bra-ket how does it compare to state-of-the art? ([https://github.com/erikbern/ann- benchmarks](https://github.com/erikbern/ann-benchmarks))

<comment> ffast-math I'm a big fan of ann-benchmarks and will be the first to tell you that the research community needs way more benchmarks like this. But I do want to add a couple caveats about it for people looking into this area:

1) Most of these datasets have _extremely_ correlated dimensions. If you plot the covariance matrices, you'll see dense blobs of entries close to 1 all over the place. This makes the ANN task much easier than it would be with, say, high-quality DNN features. As an example, I've compressed MNIST digits down to 1 byte representations with vector quantization and still gotten nearly perfect retrieval accuracy.

2) 1M vectors is not that many. You can get easily get 1k queries per second in a single thread at a decent precision/recall just brute-force scanning through them with a SIMD approximate distance function like Bolt or Quicker ADC [1]. Also worth noting that the FAISS paper (along with a lot of other work since then) focuses mostly on 100M to billions of vectors.

3) Related to (2), I think most of these methods aren't incorporating state- of-the-art approximate distance functions yet (though I haven't dug into all of their source code). AFAICT FAISS+Quicker ADC [2] is the actual leader on x86 CPUS. Can't comment on the production-readiness of their code though.

[1] The latter is a bit faster for ANN search, though the code is more complex IIRC.

[2] [https://github.com/technicolor-research/faiss- quickeradc](https://github.com/technicolor-research/faiss-quickeradc)

<comment><USER3> Good points. I want to add one more.

I think the Ann benchmark should pay more attention on

1\. The index building speed, as this is very important in some production scenarios. Now it only says I will give 5 hours to build the index on that 1 million vectors.

2\. The memory footprint, as 1m vectors are not that many. We will have to deal with billion s of vectors for chemical molecules, images and word vectors. The memory consumption will definitely impact how many servers you need.</comment></comment></comment>


PyCon 2013: Why should you become a sponsor? - <AUTHOR> http://pycon.blogspot.com/2012/07/pycon-2013-why-should-you-become-sponsor.html

<comment><USER2> And while it looks like this has been flagged or moderated into exile, I'm (the conference chair) always around to answer questions</comment>


Traces of Old Egyptian in Eurasian Languages - <AUTHOR> https://github.com/pannous/hieros/wiki <comment><USER2> While there may be some "traces", it is worth noting that in general Old Egyptian is not of Indo-European family (like Persian, for example), and the "Asiatic" part of the family Egyptian is member of only includes Arabian peninsula.</comment>


Low Code: wave of the future or blast from the past? - <AUTHOR> https://medium.com/softwareimprovementgroup/low-code-wave-of-the-future-or-blast-from-the-past-7fcd618371b2#.s7pw8g4vd <comment><USER2> It's one step up from Excel, and more rope to hang yourself in; but it's not like it's going to replace the kind of work that any serious developer would miss. It never will; systematic, abstract thinking will always take practice and some amount of predisposition. And interacting with computers all day is not really the party that non-developers seem to think, it's not primarily about syntax and interface; many can't deal with the frustration and uncertainty.</comment>


Bump-Canceling Bunk Beds Promise Smooth Bus Rides - <AUTHOR> https://www.wired.com/story/cabin-bus-sleep-suspension-system <comment><USER2> I took a sleeper bus on a 24-hour journey in China years ago, slept very comfortably, and wondered why this had not caught on in other parts of the world. Someone suggested that it was a regulatory thing: in road transportation, passengers are obliged to keep their seat belts on (or at least passengers must be in conventional seats with seat belts there for the use). I am surprised to hear that a company in the USA thinks this is a good business direction.

<comment><USER3> > in road transportation, passengers are obliged to keep their seat belts on > (or at least passengers must be in conventional seats with seat belts there > for the use)

I don't think this is universally true: most city busses I've taken don't have city belts. Additionally, many of the seats are perpendicular to the direction of travel.

<comment><USER4> Yeah, many like taxis, emergency vehicles, buses and trucks weighing 18,000 pounds or more are exempt from seat belt and child restraint laws in the USA

<comment><USER5> Can you clarify? I believe taxis must have seatbelts just not car seats.

Edit:

But yes, tour buses with sleeps are used all the time in the US.

</comment></comment></comment></comment><comment><USER6> Bizarre reactions here. Cabin has $3m of funding. People are suggesting trains and fixing the entire road system across the entire trip? Not even meaningful alternatives. Here's mine, in the same vein: Just make personal helicopter transport that's quiet and safe and fully automatic.

Seriously comical. I really like Cabin's approach to the problem.

<comment><USER7> I think you will find that those absurd people live outside of the United States, generally in a country where road conditions are far better — but still without quiet helicopters.

</comment></comment><comment><USER8> I have experienced Cabin's bump cancelling technology on a prototype on 101. We drove ~4 miles without it turned on, and then the same 4 mile stretch with it activated. Even having seen the data beforehand, I was impressed.

</comment><comment><USER9> I had a very comfortable bus ride from Krakow to Warsaw for 7 euros a few years back. Each seat was able to lean back really far and still you weren't bother your rear neighbor. Each seat also had their own iPad-like-device with games, movies, music and internet.

Now Poland does not have many highways that are of good quality. But the ones we drove were good enough to sleep on. Also the toll for cars is really low (I believe 3 euros).

I'm willing to pay an extra to be able to lay down flat down but I really do wonder what surplus is added due to the stabilizing tech. I believe it's only applicable in a country such as the USA, where the roads are poor and the wages are relatively high. Still a large enough market to make it work though.

<comment><USER10> > only applicable in a country such as the USA, where the roads are poor

Not sure about this. I've traveled all over the USA, and the highways are uniformly excellent.

Local city streets however are a mixed bag, especially in the north, where harsh winters create conditions for potholes to form.

</comment></comment><comment><USER11> Overnight busses are great for traveling if you're in another country. You can pay for the transportation to get to your new destination, and save a night on lodging cost at the same time by getting to sleep. I took an overnight bus from Venice to Paris and it was a great way to travel: no transfers, didn't need to pay for a hotel that night, and got to see some parts of the countryside I otherwise wouldn't have.

<comment><USER12> There are also overnight trains from venice to paris operated by Thello.com. For other destinations check out Nightjet and Euronight.

</comment></comment><comment><USER13> > If riders can't get a good snooze in, they're way less willing to pay $178 > to $228 per round-trip. (A savvy flier who buys their ticket at the right > time can usually snag a trip between SFO and LAX for about $115).

Can someone explain why you'd pay more for an 8h bus ride than a 1h flight?

<comment><USER14> It's in the article > "Cabin's idea is that people would rather spend eight hours asleep while traveling than four hours getting to and from an airport and in a cramped seat in the air."

Most people do not have upgrades or priority access and have to spend a lot of time dealing with checkin, security, luggage and general uncomfort which makes small trips much longer than just flight time.

Also many travelers arrive the day before an event to get a hotel and sleep, so perhaps this extra time and cost can be avoided with the bus.

<comment><USER15> A 1h flight takes a lot longer than 1h. To do some math:

8am flight:

      4a: Wake up, complete packing.
      5a: Travel to airport
      6a: Check-in
      7a: Security (take off shoes)
      8a: Takeoff, if not delayed
      9a: Landing
      10a: Checkout complete?

10pm bus:

      9p: Travel to bus
      10p: Bus departs
      2a: Bus layover for driver lunch (assuming 1 driver)
      3a: Bus departs layover
      7a: Bus arrives
      7:15a: Checkout complete.

This assumes 1 hour to travel to either bus depot or airport, and that the bus is traveling overnight on empty highways for almost all of the trip. I've never flown so please update any inaccuracies with that time table.

> _Also many travelers arrive the day before an event to get a hotel and > sleep, so perhaps this time and cost can be avoided with the bus._

There's a large value in starting your day in the same city where you're working or otherwise spending a lot of time. From not having to spend the time and effort on traveling, to the relaxation of not having to "scene-change" and adjust to the behaviors of people in two different cities. And this package lets the right traveler have both for cheaper.

>>> _If riders can 't get a good snooze in, they're way less willing to pay $178 to $228 per round-trip. (A savvy flier who buys their ticket at the right time can usually snag a trip between SFO and LAX for about $115)._

This basically combines the bus into both transportation and lodging. For an example, let's use a $250 hotel room. This assumes you'll fly in the day before a 2-day event and fly out the day after, or bus in on the first day and bus out the following night:

1h flight & 3 nights:

      Flight: $115
      Room: $250 x 3 = $750
      Total: $865

8h bus & 1 night:

      Bus: $230
      Room: $250
      Total: $480

Even if the bus costs twice the plane, it could still save money over the hotel.

<comment><USER16> These are some suspect numbers. An hour to "finish packing in the morning", why not do that before you wake up? An hour to check in? I've flown hundreds of times and think this has taken 30 minutes once or twice. An hour for security? Last few times I went, it was less than 15, even without TSA Pre.

I mean, sure, if we inflate the numbers badly on one side, that side starts looking worse, but what is the point?

<comment><USER17> I think if you ignore the specifics, and just change it to "6am - arrive at airport 2 hrs before flight", it's pretty normal. They recommend you arrive at least an hour ahead for domestic flights, and if you're factoring time for things like parking or the risk of traffic delays, arriving 90 - 120 minutes early is reasonable. (It's what I do an any rate, reasonable or not).

I would basically never take a 1 hour flight (unless it's a connection). It's just not worth it. A train or bus is more comfortable and less of a hassle.

(It's suspect to include packing for the flight but not the bus, though. Whether you have to do that has nothing to do with your mode of transportation.)

<comment><USER18> Have you flown from the Bay area to LA area. It's so much easier than driving. There's numerous airports on each end. Flights on Southwest are cheap or you can fly semi private on boutique air for about double but still not very expensive compared to these buses.

Finally traffic can be terrible even in the middle of nowhere on i5. The train is too slow or doesn't go where you need to be so isn't useful.

</comment></comment></comment></comment></comment></comment><comment><USER19> This feels like that apocryphal NASA story except it ends "and the Russians fitted hammocks".

(Two attachment points you could probably protect with something structurally like bike shocks, self stabilizing laterally, costs tuppence ha'penny.)

</comment><comment><USER20> I just took an 8 hour overnight Megabus last week and had a horrible time sleeping, ruined my entire next day. I was really struck by the thought that it's so strange we haven't found a solution to this yet - how hard can it be to just put beds on buses? It's such a simple step towards more sustainable long-distance travel. What a pleasure to see that this is possibly a near- future reality :)

</comment><comment><USER21> _Right now, the system can only move the bed up and down, so passengers will still feel hard braking and tight turns._

On the other hand, I suspect this will make motion sickness even worse --- feeling sensations of movement (or more precisely, changes in acceleration), especially if it's not in all directions, but without seeing it is what causes people to get disoriented.

<comment><USER22> At sea, I have ridden through some storms that made it a little hard to walk around, but sleep was not a problem. Ship motion at sea is a bit different from bus motion on a road, but not as far as whether it is predictable. Sometimes we're rolling along and then there is a sharp jolt, as if an odd wave came by.

* From Emerald Princess at sea _

</comment></comment><comment><USER23> Pretty bold bet that with this upgrade in comfort they will be able to create a market for sleeper busses in the US.

Would be a much less risky endeavour if the market already existed and they just had to gain technology leadership.

Still, it's a cool idea, I wish them luck!

</comment><comment> c-smile Or just use a train.

Like if you want to travel from Moscow to Vladivostok (6 days) you'd better use this: [http://thegoodlife.ru/image/962-mv.html](http://thegoodlife.ru/image/962-mv.html) \+ separate dining car.

Traveled on these, quite interesting experience. Definitely it is a good time to think where you are going.

<comment><USER24> Unfortunately, trains are difficult to build in the US, which is a car- focussed culture.

<comment><USER25> Not really that difficult, you got a ton of empty space between cities where you can put rails. Then do the stations outside of the crowded city centers, just like airports.

For "short" routes, I'd prefer trains. E.g. I prefer Cologne/Berlin by train in Germany, would even if the station was - just like an airport - outside of the city. The train ride is a lot more relaxed, not really longer if you calculate the total travel time, more space, no security theater (and related queuing), luggage check, etc.

<comment><USER26> Arbitraging a fickle TSA policy (less intense enforcement on rail vs. air travel) is not a good reason to build permanent infrastructure.

Rail and air operators will be similarly incentivized to carry as many passengers per trip as they can, so I would expect seat sizing/comfort to converge.

<comment><USER27> The cost to provide a large amount of space is much cheaper for rail.

<comment><USER26> A train takes three days to do what an airliner can in six hours. So a marginal sqft of train car needs to cost something like 1/12th a marginal sqft of airliner just to break even on a per-ticket basis.

<comment><USER27> That's only true for Amtrak in the US, where trains are pitifully slow, and on top of that you picked one of the least favorable relations in terms of distance and speed.

High speed rail achieves up to 200km/h (avg) as the bird flies, commercial aviation in the medium range may do about 400km/h on average (e.g. the 960km of New York - Chicago in about 2:30). Consider that the turn-around of an airplane is about an hour, and for a train it's likely less than that, and the 1/12 factor you bring up may end up being much less in practice.

Or put another way, there are plenty of medium/high speed rail operations that are profitable while giving a large amount of space to passengers.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I'm a little puzzled by the over-engineering. Wouldn't fixing the road be much cheaper and benefit more people?

Don't get me wrong: lowering the cost of active suspension is a wonderful idea, and will have a ton of benefit, but…

<comment><USER28> In the USA, highway building and maintenance is paid out of the highway trust fund, which is filled from the federal fuel tax. That fund doesn't receive enough money to maintain highway quality.

This being the USA, the average citizen doesn't accept the fact that "we would like to have better roads" may mean "we need to raise the fuel tax", so, instead, they pay, on average, $515 per year in extra car repairs, so that they can keep their payments on fuel taxes at a low $97 (according to [https://www.washingtonpost.com/news/wonk/wp/2015/06/25/why-d...](https://www.washingtonpost.com/news/wonk/wp/2015/06/25/why- driving-on-americas-roads-can-be-more-expensive-than-you-think))

<comment><USER29> Alternatively, take a tiny fraction of what we spend on 'defense' and send it to the highway trust fund. The federal government has a problem with prioritization, not with lack of funds.

</comment></comment></comment><comment><USER30> Would be nice with these type of bunks beds in airline economy class for long distance flights. You would be able to sleep and get good rest compared to reclining seats.

</comment><comment><USER31> Combine this with self-driving tech and you could have a roving network of traveling cabins across the country. Neat!

</comment><comment><USER32> This is how I want to fly! Take off and landing safety would be hard, though.

</comment><comment><USER33> Greyhound buses are nasty enough, and they expect someone to sleep in a Greyhound bus bed? Think of the lice and bedbugs.

Let me go ask my wife if she would take a Greyhound sleeper bus. See if I get smacked.

<comment><USER2> > Greyhound buses are nasty enough, and they expect someone to sleep in a > Greyhound bus bed?

This isn't Greyhound.

> Think of the lice and bedbugs.

Bedbugs tend to spread through people using their own bedding (which is why hostels often forbid people from putting their own sleeping bags on the bed). Presumably on such transportation as this bus you would be issued sheets and blankets, people wouldn't use their own. Train companies with sleeping carriages have decades of experience in this and it turns out that bedbugs are not that big a problem.

</comment></comment><comment><USER34> I have a bad back, the last thing I want to do is lay down while traveling for hours at a time.

</comment><comment><USER35> Let me guess:

1\. It's still a loud, shaky and smelly diesel bus.

2\. Cabin length only fits people under 6 feet and average shoulder width.

3\. Even with curtains on, you can still hear and smell your neighbours snore, vidya, movie, etc.

<comment><USER13> > It's still a loud, shaky and smelly diesel bus.

Modern diesel engines are not smelly or sooty. Most coach buses are quiet and reasonably smooth.

> Even with curtains on, you can still hear and smell your neighbours snore, > vidya, movie, etc.

This is a $200 bus ride. Your neighbors aren't going to smell.

<comment><USER36> I've had people smell next to me in business class.

Money can't buy class.</comment></comment></comment>


News is so broken - <AUTHOR>

Looking for a developer to join me on my mission to fix news!
News seems to be broken and I want to try and fix that. I want to create a place that offers a simple way to follow and find the stuff that you care about, presented in a way that is easy to scan and consume. The second part of this idea is I want to build discussion around news items, as a story unfolds it gets more context and is curated in one place. The idea is in its early stages, but I do have a screenshot to share with you that gives you a very clear idea of where I am going with this
I am looking for a developer to join me building this idea. I am willing to share equity and am ideally looking for a co-founder to work alongside with. I don't really mind too much where you are located, but we are based in Melbourne, Australia.  Beyond being a great coder we are looking for someone who is on the same wave length and can add value to the idea when it comes to user experience. Our technology stack is Java and JSP running on the App engine.
About me: I am a designer that has been in the industry for some time now. I believe in UX and simplicity. You can find some of my work here: http://www.jasonstrachan.com
If you are interested please contact me and I will share with you some screen-shots of the idea: firstname.lastname@example.com
Cheers, Jason <comment><USER2> Out of interest how does your idea differ from reddit, digg, hacker news or many of the other social news sites currently around? they all offer methods of easily scanning & consuming content as well as allowing discussions. I do agree that there are issues with our current methods of consuming news but I think there needs to be a much more significant paradigm shift than what you are proposing.

I am however very happy to be corrected, could you provide a little more information?

<comment><AUTHOR> I can imagine when I talk about this stuff you are thinking digg, reddit etc. But its quite different to that.

The biggest difference is this is a competitor to traditional news (New York Times, CNN) and not digg and reddit.

I believe we are going to share some of the mechanics that drive digg, but where this is very different is when you view story it is not a link to someone else's content - the content lives within the context of the site.

Also I will say that the idea is not fully formed yet and needs some more thought. The biggest problem is how the content gets curated and how it gets seeded.

<comment><USER3> You mention wanting to be a NYT/CNN/etc competitor instead of competing with digg/reddit/etc. Does this mean you want to be a news producer instead of a news aggregator? Or are you just looking for intelligence behind how you aggregate news (something closer to newsvine?) Also what sort of news? Big breaking headlines? Feature stories (research-based)? "Hyperlocal" news (like everyblock)?

If you're doing "intelligent aggregation" and wanting the content to live within the context of your site, as you say, I think you've got a copyright nightmare ahead of you. There are several sites out there that do nothing but pull together AP content and smother the pages with ads -- I think a few of them are making enough profits to cover the outrageous cost of the AP feeds.

I'm not trying to discredit your idea -- just hoping to get some more details. I happen to work in the news industry (on the software side, but am still exposed to the mess that is news) and find ideas in this area intriguing.

<comment><USER4> Are you thinking something along the lines of <http://fastflip.googlelabs.com/> with better recommendations and perhaps some way of following stories as the unfold?

I agree that news consumption is broken and there are lots of opportunities for new entrants, but I'm not sure what the "right way" is - I, for one, spend way too much time sifting through news, blogs, tweets, FB updates etc etc and probably still miss a lot of interesting stuff while reading stuff I don't really care about.

\- Gummi

</comment></comment></comment></comment><comment><USER5> Am I right in thinking it would work something like Wikipedia news articles but with discussions, etc. added on ?

<comment><AUTHOR> That's a big part of it, but the piece that's missing is seeding news stories as they break.</comment></comment>


Ask HN: How long did it take you to become a programmer? - <AUTHOR> How long did it take you to reach the level when you said, ok now if someone gives me any kind of idea, I am able to build it. <comment><USER2> Answer: ∞

TLDR: After about 1 year on-the-job experience at a modern company you'll be able to build most products. For ex: I built [https://wakatime.com](https://wakatime.com) solely by myself (over 6yrs since 2013) after graduating with a C.S. degree and working about 1yr professionally.

Long Explanation: I've been programming for 20 years and there's an infinite amount of complexity to programming, application development, hardware embedded systems programming, services architecture, distributed systems, infrastructure automation, data processing & pipelining, machine learning, animation & graphics, protocols & standards, computer science algorithms, etc. No one programmer can build __every __idea out there.

</comment><comment><USER3> 1 year: simple demos and games

3 years: released first shareware

8 years: first job, narrow knowledge, good at C

15 years: competent to do a middling job anywhere in a BigCo

20 years: probably at the level you're asking about

30 years: lo I am become as a god, conjuring living universes by the Logos

</comment><comment><USER4> I set a goal in November 2013 to become a professional developer in 5 years. Became a developer in June 2015. The first few months were figuring out what to learn but once I learned what the market wanted in my local area, I went about learning that particular language and framework. In my case that was Ruby on Rails. Now I'm trying to become a more rounded Full Stack dev.

1 year: Able to make basic crud apps, use Jquery, css, 2 year: Much more comfortable with Rails, unix, CI and everything that goes with it 3 year: Comfortable using services such as Elasticsearch, learning new languages etc. 4 year - now: Currently learning Docker but make a list at the start of every year of the things I want to learn.

I make a list every year of what I want to learn and just do it.

Current list looks like this:

[x] Rails Performance by Nate B

[ ] Teach Yourself Computer Science

[x] Design for Hackers book

[x] ES6 by Wes Bos

[ ] learn docker [https://diveintodocker.com/ref- gorails#enroll](https://diveintodocker.com/ref-gorails#enroll)

[x] Javascript course 30 days (Wes Bos)

[x] Css grid course (Wes Bos)

[x] Css flex course (Wes Bos)

[ ] Scala - build list of resources first

[ ] Javascript the weird parts (udemy)

</comment><comment><USER5> Is idea a static website or a self driving car? I've been a programmer since 10 print [1] in the 80s, but I still can't implement all I want, I can make a living out of it though.

[1] [https://www.amazon.co.uk/10-Print- Chr-205-5-Rnd/dp/026201846...](https://www.amazon.co.uk/10-Print- Chr-205-5-Rnd/dp/0262018462)

</comment><comment><USER6> Went to university for 4 years, learned some basics and lots of mathematics and theoretical stuff. I could tell you how an operating system works, how data is transferred between networks down to the physical layer, calculate the best and worst case performance of an algorithm, but if you asked me to write a simple program I would not have been able to do it.

Then I got a trainee job, had someone mentor and teach me, and within a month I was building my own server applications and web interfaces.

But the longer I'm at this, the more I realize how much I just _don 't_ know and how much there is to learn. It's hard to pinpoint an exact moment where I would say "yep, I'm a true programmer now" and I'm sure I haven't even reached that point yet by a long shot. But as long as I keep learning (and collecting green squares on GitHub), I'm satisfied with my work.

</comment><comment><USER7> Going by the body text of your question, I guess 4 years. I first started coding web pages with free hosts like Geocities and Angelfire. 2 years later I dove into PHP which compared to HMTL and CSS looked very foreign to me at the time, having no prior experience with procedural languages.

However, I have gotten accustomed to that as well, to build websites with dynamically generated web pages, and query strings and forms to fetch data from databases. This was still non-OOP and without frameworks, but it worked for me.

My first ever paid web development job was for a freelance client who needed a simple intranet application for private auctions. He seemed fine with my knowledge of PHP and MySQL, and was able to get the job fine in the entire month that it took.

</comment><comment><USER8> Started working on a project about three weeks after I began learning the basics of Python. I reached the level specified after about a year. I'm self- taught, so I'd guess that I learned more quickly and less efficiently.

</comment><comment><USER9> Ten years of self-taught tinkering before I took a job. No other formal training.

I wasn't particularly better after 10 years than I was after 5, so it was more a matter of taking the job than building my skillset after some point.</comment>


Mustache now has dot notation - <AUTHOR> https://github.com/defunkt/mustache/commit/c183699ff1b23b4bc5efbfa3ed323ff9509855f7

<comment><AUTHOR> It's implemented in the Ruby version, and part of the spec:

[https://github.com/mustache/spec/blob/master/specs/sections....](https://github.com/mustache/spec/blob/master/specs/sections.yml)

[https://github.com/mustache/spec/blob/master/specs/interpola...](https://github.com/mustache/spec/blob/master/specs/interpolation.yml)</comment>


Ask HN:  How do you estimate a project timescale and negotiate with a customer? - <AUTHOR>

I've been in the situation recently where I've been asked to estimate a project for contract work.  I know my hourly rate,  no problems there,  but I have huge difficulty estimating how long something will take.
If you overestimate, you may not get the contract,  if you underestimate,  you end up working for peanuts to get the thing done.
So my question to you is;  how do you estimate a project's timescale/cost?, and how do you negotiate with the customer to protect yourself in the event that the project runs over time budget, as they generally tend to?
thanks in advance,  and apologies if this has already been asked.
Paul <comment><USER2> _Idealist_ : Explain to the customer that nobody knows how long it'll take, and then sit down with them to work out a deal that balance both of your interests. Odds are they need some portion of the project done, so focus on how to deliver it incrementally to reduce risk.

 _Suit_ : Don't waste your time trying to work out what you expect the schedule to look like. Figure out what they can bear, and negotiate a deal that guarantees you get most of the money they can spend with the least risk to you. Your liability is in what you promise contractually, so hire a good lawyer to help you minimize your legal liability.

 _Me_ : Race to do the project before negotiations need to wrap up. Then write a beautifully detailed schedule with visible checkpoints, negotiate with confidence, and deliver checkpoints slightly a head of time on average. Use a little of your spare time to meet their mid-project change requests and build in a feature that tickles your interest and will delight them.

 _Coder_ : Negotiating a schedule is like negotiating how long it'll take to produce a baby. It'll be done when it's done, but if you get me a girlfriend I'll get it done faster.

 _Software Engineer_ : Charge your customer a standard hourly rate to record their requirements and break them down into function points. Estimate function point complexity and risk based upon your organizations prior prior projects function point productivity. Schedule a week with the customer 3 months from now to present your analysis and estimates including confidence intervals and costs in each scenario.

<comment><USER3> > Me: Race to do the project before negotiations need to wrap up. Then write a > brilliant looking schedule and negotiate with confidence.

Then find that someone else has you beaten on the estimate (because they don't know how to estimate!) and gets the job.

That's happened to me once when I tried that trick, better make sure you're the only bidder :)

<comment><USER2> I didn't say it was a smart way to go, just that it's my way.

Taking the risk before knowing there's a reward is probably the riskiest way to go. For me though, it's fun.

To be fair, that was my way 5 years ago. I guess now I try to make sure everyone's working together with similar risks and rewards. I work better with people than against them.

My present way isn't necessarily the smartest or most profitable way to go either.

<comment><USER3> Ok, thanks for clearing that up, I though the way you wrote your initial comment indicated that was how you did things today.

</comment></comment></comment></comment><comment><USER3> Hey Paul,

I wrote a pretty long blog post on that a while ago, maybe it is of use to you:

[http://jacquesmattheij.com/How+to+get+better+at+estimating+s...](http://jacquesmattheij.com/How+to+get+better+at+estimating+software+projects%2C+for+freelancers+and+teams)

<comment><USER4> Good advice. I'd go further and say that you should charge the customer for putting the spec together.

<comment><USER3> Sometimes you can, sometimes you can't. If the customer has no clear idea of what it is they want and if you are (at the moment) the only bidder for the job, then that's a possibility. But if you are bidding against other companies then this is usually not an option.

</comment></comment></comment><comment><USER5> All estimation techniques follow the same pattern:

1) list all the components and tasks that need to be completed,

2) assign an estimated duration (hours or days) to each task,

3) add them all up and multiply by a fudge factor.

The problem is that none of these are easily done. Step #1 requires a detailed understanding of what you're going to build. Obviously, this is often impossible, but you'll just have to guess. Be sure not to forget categories such as testing, debugging, meetings, etc.

Step #2 relies on experience and your assessment of the client's quality/time trade-off threshold. If you don't have much experience, just guess and then _track your time_ so you can go back and compare reality to your guesses.

The "fudge factor" in step #3 can either be hidden from the client or called "integration phase" or some such. Basically, it is the process of ensuring that all the components are working smoothly together.

Entire books have been written on project planning and estimation. There is no shortcut to doing it well, only experience through the school of hard knocks.

Good luck.

<comment><AUTHOR> much thanks. I suppose the answer is to break it into the smallest chunks possible when making an estimation.

<comment><USER5> The problem with too much granularity is that you will miss more tasks. This is, of course, offset by each task being easier to estimate. The general rule I use is that the more detailed the requirements/spec and the more static they are, the more granular you make the task list. The more vague everything is, the less granular you make the task list.

</comment></comment></comment><comment><USER6> I wrote this article some time ago.

<http://inter-sections.net/2007/11/10/easy-estimates>

This technique is used by large corporations but can also be adapted to smaller pieces of work quite easily.

One important aspect of this method is that it looks very credible, which comes in very handy when discussing estimates with the customer. The argument shifts from "this shouldn't take that long" to "ok, let's not do this bit because it's too expensive".

It's much healthier for your client relationship to be having arguments about scope than about your estimates' reliability.

Also, I've found this technique to be quite accurate on the whole, so it is actually better than gut feeling estimates on both the social side and the technical side.

</comment><comment><USER7> I too have great difficulty estimating how long something will take. Whatever you do, don't work for a fixed price unless you've pretty much already written the software and know you have a big safety/profit margin. I found the video on this page very helpful in articulating the reasons not to agree to a fixed price contract. <http://unspace.ca/innovation/speak>

-Chris

</comment><comment><USER8> There are actually two separate questions here:

1) How long will this project take? The answer to this question is called an estimate, and there is a huge body of work about it.

2) Should I offer to do this project for a fixed-bid / quoted / whatever price?

I think you've already assumed the answers to the second is "yes"; and perhaps you were right for the situation in front of you. Beware the "winner's curse", though: <http://en.wikipedia.org/wiki/Winners_curse> which will quite commonly occur in a fixed-bid situation where some of the bidders are inexperienced with fixed bidding.

My nitpick, though, it that is unhelpful to call this fixed-bid price an "estimate". I wrote (and recorded a short video) about that a couple months ago:

<http://kylecordes.com/2010/estimates-and-promises></comment>


A short history of the USSR through its food - <AUTHOR> http://www.theguardian.com/world/2015/oct/15/cccp-cookbook-short-history-of-the-ussr-through-its-food <comment><USER2> No Olivier salad? I'm surprised this staple of parties wasn't listed: [https://en.wikipedia.org/wiki/Olivier_salad](https://en.wikipedia.org/wiki/Olivier_salad)

<comment><USER3> Ah, Russian salad. Very popular in the Balkans even nowadays.

</comment></comment><comment><USER4> Fried eggs with Jam!? That doesn't even make sense in Russian! :)

</comment><comment> guard-of-terra Never heard of fried eggs with jam, but other things are mostly spot-on. I just have so wonder why red caviar seems so small-grain? Also, where are bliny?

<comment><USER5> Actually, it seems to be even longer lived than that:

[http://p-syutkin.livejournal.com/177938.html](http://p-syutkin.livejournal.com/177938.html)

It's a reprint from some 1955 book. Something is definitely fishy.</comment></comment>


I Quit Google Over Its Censored Chinese Search Engine - <AUTHOR> https://theintercept.com/2018/12/01/google-china-censorship-human-rights/ <comment><USER3> Isn't this the same guy who quit back in September?

[https://news.ycombinator.com/item?id=17980424](https://news.ycombinator.com/item?id=17980424)

[https://theintercept.com/2018/09/13/google-china-search- engi...](https://theintercept.com/2018/09/13/google-china-search-engine- employee-resigns/)

<comment><USER4> Yes. The provided article links to that earlier one. The biggest difference is that this article is written directly by the former employee in question instead of by a journalist. He also says a small number of additional things.

</comment></comment><comment><USER5> If you have "Google Engineer" on your resume, quitting your job and finding another is a much simpler task than for 99% of the rest of the world. This guy? He can quit and he'll be fine. He can walk into any dev shop in Toronto and we'd take him- maybe not at Google salary rates, but close.

Now consider the rest of the world. The large majority of people for whom quitting for moral/ethical reasons means a significant risk of your kids going hungry. They can't just quit without something else lined up ahead of time. When you're precariously employed (and a growing percentage of the world is) you can't take that kind of a risk even if you work for the devil himself.

So given this dichotomy between employees, you would think that there would be more than just a handful of Googlers quitting for ethical reasons over Dragonfly. But there aren't. The sad truth is, the thought of making just that little bit less money per year at another company (but still more than enough to live well), the thought of losing that status symbol of "Googler", that's enough that they're willing to accept that their work will support suppression of human rights.

Instead, they'll find a mental justification for why it's okay. That's far easier. Look, Sundar Pichai has done a wonderful job of it.

And so that is why Google won't stop. Because there's no reason to. They won't lose many employees. They're dominant enough that they won't lose customers. They'll be just fine.

<comment><USER6> Or alternatively, the employees have reasoned through the benefits and potential negatives of doing business in mainland China and have concluded that the benefits outweigh the negatives. How, exactly, does Dragonfly make the world a worse place? Sure, I'm opposed to censorship or policing citizens' interests. But there's no real indication that the censorship or surveillance is any worse than the existing search engines present in China. As far as that front is concerned, Google in China would be no worse than the status quo.

The potential benefits are substantial. Google could be the first big tech player to break into what is usually seen as a walled off market. Over time economic ties could bring the countries closer together, and reduce the likelihood of conflict (this is the original rationale behind the EU, for example). As far a I can see, Dragonfly is not any worse than the status quo, and had potential benefits - and this is speaking from someone who had no incentive to see Google succeed. I don't work there nor do I own any stocks in the company.

<comment><USER7> > _does Dragonfly make the world a worse place?_

Yes. It normalizes suppressing political speech that disagrees with the incumbent power. That flies in the face of values democracies hold dear. "Someone else would do it" isn't a valid excuse. If you're doing it, you're complicit. (Also, Google will do it better than almost anyone else. That a respected American technology giant will work with China's censorship regime gives the institution legitimacy.)

<comment><USER8> The difference is that impact of normalizing behavior is completely speculative, but search is a real product that can benefit people. Any business with China normalizes their suppression, but I doubt that the people who oppose Dragonfly have a problem with how many of their parts in their smartphone were sourced from China. Conveniently, Dragonfly doesn't offer anything to Americans, so that just crosses the line of what's "evil."

<comment><USER7> > _Dragonfly doesn 't offer anything to Americans_

Precedent matters. Google having built a censored search engine for China makes it harder to say "no" to Saudi Arabia, Russia, Poland, France or even the American government. Apple understood this when they refused to build a cracking tool for the San Bernardino shooter's phone.

<comment><USER9> The same Apple that, also famously, moved iCloud data of all its Chinese customers to servers in mainland China controlled by a Chinese company (and thus, accessible to the government)?

It's also worth reminding that Google _did_ exit China in 2010 because of precisely these ethical concerns. Only to watch all of its competitors - <USER2> included - unscrupulously do business in China. It's no wonder they reconsidered their stance.

</comment></comment></comment></comment></comment></comment><comment><USER10> >"Yet, a little more than a week later, Google CEO Sundar Pichai attempted to invoke an engineering defense by arguing that Google would not need to censor 'well over 99 percent' of queries."

This is one of those egregious misuses of statistics that really gets to me: while Sundar's point might be valid, not all queries deserve equal weight. To the author's point, equating "human rights" to "pictures of kittens" is not a fair way to frame the problem.

<comment><USER11> The point is that Google should not be held as moral entity.

If it's held onto the moral standard, Ads should not be Google's business at all, as Larry Page stated sometime in the early days of Google. (I cannot find the reference though, the statement is on the line of "advertising is fundamentally immoral).

On the other hand, if you look at what search service is provided in China (Baidu would sell online groups to advertisers entirely and let the advertisers to pretend to be genuine community member and manipulate the content), by simply providing a censored Google search is a morally noble service to Chinese Internet users.

I do not support or disapprove censored search on the human rights level.

I do support censored search on the basis of providing a more normal search service, and make non-political high-quality information available to normal Chinese citizens.

<comment><USER12> > The point is that Google should not be held as moral entity.

Any company is just a bunch of people doing stuff. Those people always remain morally responsible, there's just legal exceptions, but no moral ones.

If one doesn't question something, or even seeks to remain ignorant of it, they could be argued to even be responsible even for something they didn't know about -- since it wasn't despite, but because of their efforts that they were ignorant of it.

> simply providing a censored Google search is a morally noble service to > Chinese Internet users

There is nothing "noble" about slightly better product, any more than making a slightly thinner laptop is "noble".

> _" We could have taken a moral stand, but what good would that have done?" > But the moral good of a moral act inheres in the act itself. That is why an > act can itself ennoble or corrupt the person who performs it. The victory of > instrumental reason in our time has brought about the virtual disappearance > of this insight and thus perforce the delegitimation of the very idea of > nobility._

\-- Joseph Weizenbaum, "Computer Power and Human Reason: From Judgment To Calculation" (1976)

It's a disappearance of insight, not new insights. Some regressed into a moral stone age, but they didn't change the world as much as just themselves with that.

<comment><USER11> > simply providing a censored Google search is a morally noble service to > Chinese Internet users

No, considering what Chinese consumer are getting, a US normal search product is morally more noble.

People literally get gulled into spending their life's saving because of Baidu's fake ads.

Just like giving African famine victims some amount of food is morally noble.

<comment><USER12> > People literally get gulled into spending their life's saving because of > Baidu's fake ads.

Then try this, in order of ascending difficulty: make link lists and web rings, make search engines, organize for consumer protection, actually demand the concentration camps be closed, for starters.

You can't appeal to humanity, "mercy for the non-dissidents", while ignoring the dissidents as out of scope and irrelevant. That's like telling someone they should stop snoring while you are operating machinery at 500dB or something. You can't impress me by saying this person who burned 23089234 dollars needs my 50 cents or they will starve.

And that's besides the point anway. It's not about the wellbeing of Chinese non-dissidents, it's about the potential complicity of companies in countries which so far are not totalitarian. I'm not going to feed someone who is starving if it means I wipe my whole intellectual heritage with some virus I bring home. To even bring up a sub-optimal search engine as something that could ever matter in such a context is staggering.

> Just like giving African famine victims some amount of food is morally noble

That "victim" is in turn currently brutalizing (and/or complicit with the brutalization of) someone else who is _both_ starving and being brutalized. The only condition for "giving them food" is to stop with that, something they should have done already anyway. But even now, the actions show that the brutalization and/or the looking away is more important to even themselves than the "food".

The appeal to compassion to normalize being _not_ compassionate does not work. If you can't have sympathy for someone kidnapped or murdered for pissing off the wrong corrupt henchman, then don't talk about ads mixed with search results like some super tragic thing.

Comparing the results of what humans are doing (or fail to do), with a famine, which basically just "happens", that is also duly noted, and fully rejected. At this point, I think I could make a totalitarianism rationalization bingo card.

<comment><USER11> Tbh I do not get what your saying and their connection with my statements.

But mine probably appears the same to you...

<comment><USER12> 1.) Chinese citizens can't fix their own stuff, because organizing for a change that _they_ want is not something they dare / are allowed to do.

2.) To not spread that into non-totalitarian companies, we must not mormalize totalitarianism. If we did, who would _we_ beg for a better search engine or such petty gimmicks -- when the whole world is a corrupt place run by murderers?

3.) Speaking of that, murder is not government. Obedience towards murderers is not citizenship.

4.) You just used the word "noble" to deny the nobility of those quitting Google, and ascribe it to something that is not noble in the least. It's like something you noticed other people care about, you just don't quite know what it is.

> _Every powerful state relies on specialists whose task is to show that what > the strong do is noble and just and, if the weak suffer, it is their fault._

\-- Noam Chomsky

> _Truth is something so noble that if God could turn aside from it, I could > keep the truth and let God go._

\-- Meister Eckhart

5.) The confusion is not mutual.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> When discussing project Dragonfly there are two perspectives:

1\. what's good for China's citizens

2\. what's good for the rest of the world

You must keep this in mind. For China's citizens it's undeniably good for Google to be there, because Baidu lacks competition and I hear that it sucks. Having a good search engine is important for education.

For the rest of the world, Google being there is backpedaling on their core values and we're then in danger for one of the world's most powerful and dangerous software companies to succumb to Chinese demands, because of money, which can affect all of us.

I would prefer for Google to not go to China. I'm a privacy fanatic and a liberal, so I don't want the Chinese administration to further destabilize our liberal democracy, which is already too fragile these days. But if there's an uproar, let's not do double standards. Google isn't a special snowflake. I want the same outrage for Microsoft or Apple or other big software companies that sell products and services in China. Because they aren't much less dangerous and prone to succumb to Chinese demands.

But that's a personal opinion. Maybe having these multi-nationals pull out of China would be a net loss for the whole world. Who knows. And having some Chinese acquaintances, I certainly don't wish for them a lower quality of life.

<comment><USER14> > _For China 's citizens it's undeniably good for Google to be there, because > Baidu lacks competition and I hear that it sucks._

In the short term, maybe that's true. But longer term, it just makes Chinese citizens even more comfortable with censorship. If all sources of information in China sucked, and citizens knew about it, they'd be more likely to protest or push for change.

If non-Chinese entities decided to keep or move business elsewhere due to human rights and censorship concerns, the Chinese government would eventually have to change. They might be an economic powerhouse now, but being cut off from the rest of the world makes that position untenable.

<comment><USER13> > _If all sources of information in China sucked, and citizens knew about it._

This is wishful thinking. The People's Republic of China was founded in 1949. 70 years later communism still sucks, yet in China it endures.

Being born in an ex-communist country from the Warsaw pact I can tell you ... the only reason USSR fell was because of hunger. Without hunger, which is a primal instinct, human beings can adapt to everything else. In other words, for as long as China's economy is strong, their political system has virtually no opposition, censorship is part of politics and this isn't an issue that the population can vote for.

China blocks Internet sources that aren't filtered via their firewall. China also blocks many VPN services. They also use tactics like making foreign online services unbearably slow. That Google is or isn't doing business in China has absolutely no consequence on the Chinese' ability to search for unfiltered information.

> _If all sources of information in China sucked_

The problem that you're not seeing is that in order to assess whether something sucks or not, you have to have an alternative to compare it with. In absence of an alternative, this scenario will not happen.

So while I agree that Google shouldn't go to China, because it would be against our interest for obvious reasons, trying to frame it as not being in the interest of the Chinese people is wrong, possibly dishonest.

</comment></comment></comment><comment><USER15> Why are Microsoft and Google employees so different that it's OK for Microsoft to have a censored China specific Bing search engine, but it's not OK for Google to have one ?

[https://www.bing.com/?mkt=zh-CN](https://www.bing.com/?mkt=zh-CN)

[https://www.economist.com/analects/2014/02/12/bings- chinese-...](https://www.economist.com/analects/2014/02/12/bings-chinese- enigma)

<comment><USER16> Some Google results in USA are removed for dcma reasons, are these considered censorship?

<comment><USER17> By many people, yes. And here in Europe, it's even so much worse (right to be forgotten, all kinds of hate speech, etc.)

</comment></comment></comment><comment><USER18> >"Code had been written to show only Chinese air quality data from an unnamed source in Beijing"

Anyone remember "To organize the world's information and make it universally accessible and useful."?

<comment><USER19> yes and the OP sums up Dragonfly's specifically known problems with:

 _...blacklisting the phrase "human rights," risking health by censoring air quality data, and allowing for easy surveillance by tying queries to phone numbers_

there seems to be a parallel between China's desire to censor local air quality information and what certain US presidential administrations have tried to do with scientific research on climate change

</comment></comment><comment><USER20> Lots of people talk, but this guy is giving up a lot of money for this stand. That takes character

<comment><USER21> But there's always the question: Do I stay and try to change things? Or do I leave and expect others to?

<comment><USER22> Engineers are commodities. If this is what the board and shareholders want, an engineer has a ~0% chance of leading a revolution and changing that. This is real life capitalism not The Hunger Games.

<comment><USER21> Engineers can move up and have influence.

<comment><USER22> Influence is irrelevant. A publicly traded company (especially of Alphabet's size) has fiduciary obligations.

<comment><USER23> Some engineers also have shares.

US for-profit (non-bank, non-insurance, non-investor bund) companies, unlike European ones, are not legally required to maximise profits unless they are insolvent. Primary reason for short-time profit drive is investor pressure. The most important fiduciary duty is _business competence_. The right to reap profits is given in exchange for that.

</comment></comment></comment></comment></comment></comment><comment> gingerbread-man I'm surprised no one from Google has made a full-throated defense of this project. Not that I personally agree with it, but there is a case to be made that projects like Dragonfly embody the longstanding US policy of "constructive engagement" with China. It's not hard to imagine Hennessy or Pichai extolling the virtues of compromise and highlighting a handful of key concessions from the Chinese gov't.

Why haven't we heard that? Either 1) Even Google's leadership doesn't believe this has any moral upside, only financial, or 2) They can't so much as admit that they're making concessions to an authoritarian regime, for fear of offending said regime. Both explanations betray remarkable moral cowardice.

<comment><USER24> Because the advocates of the project keep the conversation internal (and civil) instead of trying incite outrage through leaks, mobs, grandstanding, moral posturing and what not[1].

Source: I'm a Google employee.

[1] [https://medium.com/@googlersagainstdragonfly/we-are- google-e...](https://medium.com/@googlersagainstdragonfly/we-are-google- employees-google-must-drop-dragonfly-4c8a30c5e5eb)

<comment><USER25> I'm also a Google employee. The overwhelming majority of internal opposition to Dragonfly has been civil and considerate. There have been uncivil remarks and accusations by several who support Dragonfly. (EDIT: I should clarify that these rude voices are a minority, on all sides of the issue.)

Please keep discussion of this issue substantive.

<comment><USER24> Do you have any links you can point me to that demonstrate the pro-Dragonfly folks going through similar lengths to "have themselves heard"? What part of my statement seems unsubstantive?

<comment><USER25> You frame the anti-Dragonfly contingent as "trying incite outrage through leaks, mobs, grandstanding, moral posturing and what not." This generalization is inaccurate and non-substantive.

</comment></comment></comment></comment></comment><comment><USER26> Good for him but this is not very helpful. Google needs to be brought to admit that freedom of information is not their business, and at a minimum they should be pressured to be transparent about the kind of stuff they censor, inside and outside of china. (Pity that GDPR did not cover that). Thanks to recent events, its no longer taboo to say you censor stuff, and the question needs to move to who benefits from that and who loses. Childish responses about "99 percent" are just that, infantilizing and insulting.

<comment><USER27> > transparent about the kind of stuff they censor

That's often illegal, be it "National Security Letters" in USA, or anything in China.

If they slap on a generic disclaimer "This Serach Engine may censor results known to the State of California to cause cancer or known to the People's Republic of China to cause civil discontent", that helps no one.

<comment><USER26> people have become so accustomed to censored things, and often so supporting of them , that i wouldnt be surprised if the NSA just went ahead and be public with it. As for china, google can be transparent about it to the rest of the world, they are a US company.

<comment><USER28> > As for china, google can be transparent about it to the rest of the world, > they are a US company.

And then Google would make enemies with the CCP, which kind of defeats the purpose of giving in to their demands for censorship and the identification of dissidents.

</comment></comment></comment></comment><comment><USER29> Can someone help me understand why Google would create such a solution for the Chinese government? Is it money (does Google need it)? How else does Google benefit? Does this mean other search engines like Bing will follow suit?

<comment><USER30> This is a very common way of looking at this problem, and I find it absurd: Google is creating this "for the Chinese government". How about for the Chinese users? I for one am a Chinese use, and I would love to be able to use Google in China.

<comment><USER31> Quite the contrary, I think Chinese people would benefit much more if Google would refuse to build a search engine with cencorship.

By accepting their rules, Google would validate the cencorship that government is forcing to their citizens, and government could easily tell to their people: "Look, whole world is agreeing with me and what I am doing."

By not accepting to build it, Chinese people will always have the upper hand in the argument, and something to reference it to.

<comment><USER30> I think you need to stop telling Chinese people what they need. We know what we need. As long as there is still cencorship, we will always have something for the argument. More to the point, an argument is not even what we need the most right now. It is not even close to the top of the list. We need the best search engine in the world much more than an argument with the government.

Looking at your comment makes me feel that it is not the Chinese people who are afraid of "losing an argument". If anybody, it is you. You believe so deeply in the evilness of Chinese government, that you are afraid your evidences are drifting away from you.

Just a hypothesis. No offense.

<comment><USER31> Im sorry that my comment made you feel this way. I was not trying to win any argument here. My comment above would be my reaction if it would happen to me.

I think it helps to brainstorm all the aspects of a problem. Of course, I can not say what you need specifically, you are right about that.

> If anybody, it is you. You believe so deeply in the evilness...

Btw, this feels more like an attack than a hypothesis, just saying.

<comment><USER30> I am very sorry to make you feel attacked. I honestly did not mean that. I really appreciate you still being able to stay cool even when you feel offended.

<comment><USER31> It is healthy to disagree with each other as long as it does not get personal with assumptions. Thanks for the discussion :)

</comment></comment></comment></comment></comment></comment></comment><comment><USER32> This is so over blown. Providing Chinese people with slightly censored search is better than no Google search at all.

Think how fucking much you use google every day, it's easy for you to sit here and yell human rights violation.

FFS Google already censors your search results here in USA, why are you complaining that they will also do it in China.

<comment><USER33> Does Google censor results according to how I want it to (SafeSearch) or according to how my government wants it to?

<comment><USER34> Both. You won't have much luck using US Google to find child porn, bomb-making manuals, terrorist propaganda, etc.

</comment></comment></comment><comment><USER35> Question; does anyone know whether Dragonfly is designed to support China's Social Credit system? Censorship is one thing, but using Google et al. to assist China in turning life into even more of an MMORPG than it already is is a whole other level of evil. If the answer isn't known then I'm left to assume that Dragonfly will be a feed for Social Credit, because it isn't plausible that Chinese authorities would forego using it for some reason.

</comment><comment><USER18> >"Human rights and basic political speech are not an ignorable edge case."

This aptly summarizes the key point for the critics of Dragonfly. Why isn't this the lede?

</comment><comment><USER36> Regardless of the specifics of the project, what's disappointing to me, as a Google user and fairly significant Cloud Platform customer, are the internal dynamics depicted in this earlier article [1]: the head of Google China operations sidelining the internal privacy and security teams, keeping employees and even top management in the dark, and driving hard toward a _fait accompli_ project launch because he _knows_ he's doing something that will cause a huge backlash internally and externally. This seems very un-Googly.

[1] [https://theintercept.com/2018/11/29/google-china-censored- se...](https://theintercept.com/2018/11/29/google-china-censored-search/)

</comment><comment><USER37> > Dean argued that [...] China's surveillance is analogous to the U.S.'s > Foreign Intelligence Surveillance Act warrants, secret warrants purportedly > issued for the purpose of rooting out foreign spies.

So, since Google has made it publicly clear they disagree with the opacity around FISA warrants and have fought to make some transparent, can we expect the same level of public disagreement and fight for China policies?

This is what is frustrating me more than the actual censorship. Businesses that kowtow to Chinese government demands may use this whataboutism to compare to western governments, and they're right about the similarities. But they refuse to publicly even disagree with the practices like they will for western governments. If you do business in the US and your principles are pro freedom and/or pro privacy and publicly denounce US government actions against those, how can I really believe those are your principles if you remain mum in other instances. Does even the inability to disagree w/ certain ideals publicly trump your principles?

Google and other companies need to stop drawing comparisons if they refuse to draw them in the other direction. Google, come out in an official blog post and say you don't like China asking you to censor stuff. Apple, come out and officially say you don't like being forced to use Chinese clouds for your user data. This isn't like asking you to expose an NSL, it's like asking to to oppose the idea. Otherwise, we have to assume you do agree with the practices, or at the least don't disagree.

</comment><comment><USER38> Pichai, now is your opportunity for future generations of Americans to not try to awkwardly avoid talking about you when Europeans grill them about the history of American sympathizers with what will then be known as one of the greatest bloody disasters in history.

</comment><comment><USER39> Google is well within their right as a US company to build whatever censored search engine they want for China. The follow on opportunities may be financially enormous. But at some point, establishing and sticking with a set of values can make or break a company's future. Maybe not today or tomorrow but a decade down the line we may look back at some of these decisions as a tipping point. Running a company as large, powerful, and influential as Google is not easy - there are very few items which are morally black and white (e.g. choosing to work with the DOD). But this issue seems to be pretty straight forward from a moral justification standpoint. I hope Google makes the right call here.

</comment><comment><USER40> We're in the era where finance has taken over the web, so Google doing business in China is a forgone conclusion [0]. But it would be interesting if Google turned around and published the resulting censorship databases outside of China. I can imagine independent research looking into newsworthy summaries of what's been blocked, models of how practical censorship actually functions, offline thumbdrive dumps (to be smuggled in by activist organizations), etc. It would be a great public dataset for their cloud computing offerings.

[0] as an organ of the Chinese government, just as they're an organ of the US government in the US

<comment><USER41> This is the real problem here. Once you are dependent on Chinese profits, the Chinese government will lean on you to conform, or they will cut those profits off. Just like the US govt.

<comment><USER20> The possible 'profits' suddenly become possible losses once you're invested. Its easier for shareholders to turn their back on some profits than to swallow losses

</comment></comment></comment><comment><USER42> Just wanted to point out that China does not suffer by your quitting Google. You need to quit China.

</comment><comment><USER43> dont get it... people dont want censorship in china but they are fine with it here!

<comment><USER44> Who's fine with it? Which of those actually understand the ramifications? Are any of them also in the group which opposes helping China censor the internet?

<comment><USER45> There has been a "deplatforming" wave in the US where large monopolistic (or oligopolistic) megacorps censor people from their platforms. And by-and-large this censorship seems to have been well received by the media.

You may not like Gavin Mcinnes or Milo Yiannopoulos or Alex Jones (I don't!) but I also don't think the tech monopolies should be allowed to erase them from the internet without losing their common carrier protections.

<comment><USER46> Being removed from a specific platform and being inaccessible on the internet are two different things.

Alex Jones could purchase IP space, peer with other IXs and theoretically get his own news site to rival any existing ones. This should always be allowed.

Individual services run by private entities should always be allowed to remove users from the service. xkcd 1357 is a good match here.

edit: there could also be an argument that IXs could remove his peering, but i think that's a separate discussion. Ideally IXs should peer regardless of content.

<comment><USER47> its a bit of a slippery slope though isnt it?

look at gab getting their domain and cloud hosting dropped... censorship is moving down the stack. why wouldn't it hit the IX's?

<comment><USER48> You have a right to free speech, not a right for other people to repeat it.

<comment><USER49> I mean, ok, just don't come crying to everyone else about "net neutrality" when large megacorps start censoring competing services and putting your streaming traffic in the internet slow lane.

I mean, it is their service,right?

<comment><USER50> That's the whole point behind Title II. No, it's not their service: it's a common carrier providing a public utility. With that comes responsibilities towards consistency and neutrality of service.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER51> Don't want to be evil? Don't become a public corporation.

Three cheers for the bootstrappers! Patience is a virtue.

</comment><comment><USER52> Who is the $ person behind this article? TheIntercept has no ads, no subscription, but a huge budget and obviously a billionaire-like benefactor. I'd like to know who that is. It should add color to any story published there.

</comment><comment><USER53> Let's say a country allows well over 99% of websites to be accessed, it only blocks Google products because the country's government doesn't agree with them fundamentally. I think that would make Google a tad upset.

</comment><comment><USER54> _" Anybody who does business in China compromises some of their core values."_

The same can be said for Europe.

Does Google want to omit search results for publicly crawled Euro information? Probably not. But GDPR requires it.

<comment><USER55> So effectively anyone who owns anything "Made in China" is transitively enabling someone doing business with China?

Does Google having offices in the Middle East also compromise core values?

Turkey, UAE, Israel, and South Africa aren't exactly saintly nations known for their lack of censorship either.

[https://www.google.com/about/locations/?region=africa- middle...](https://www.google.com/about/locations/?region=africa-middle-east)

</comment></comment><comment><USER56> Good for you, righteous dude. Now, start a competitor to Google. Hell, start a competitor offering uncensored search to the Chinese market!

</comment><comment><USER57> probably relevant here.

[https://github.com/ithinco/i-am-chinese-the-dragonfly- must-g...](https://github.com/ithinco/i-am-chinese-the-dragonfly-must-go-on)

Disclaimer - I am not the Author

</comment><comment><USER58> Google in China would have been a way for Google (and Western Democracies) to get the most current listing of what China is asking companies to filter.

Whatever China was not comfortable asking international companies to filter (it shows to others things that Chinese government is trying to control), would have been shown by google to Chinese users by default.

Question for the google engineers here objecting to filtered products in China... Is the right to restrict right to the outcome of ones labor after it is sold universal? Who else would you grant the right to restrict the fruits of their labor from being used by you if they don't agree with you on something that may be important to them?

Can a coal miner ask the utility company to stop electrical service to the parents of a google engineer residing in heartland? If no, why not?

Why can't the baker deny decorating a cake a certain way against their will?

If you are asking for a ethical right to deny basic things (internet search is just about there as electricity, food, shelter, emergency care), just imagine if all the things you depend on came with similar exceptions that excluded you from using it.

I would have imagined lot of googlers taking objection to blatant content/speech suppression on YouTube. But they are completely fine if it is their ideology winning as a outcome of a said effort, no matter the ethics.

</comment><comment><USER59> Probably beneficial for Google that he quit and is no longer working on the project

</comment><comment><USER60> So why not quit over Google's compliance with FISA warrants?

Without drawing some very specific parallels and distinctions, the decision to quit over Dragonfly is mainly a voice of support for neoconservative anti- China warmongers.

<comment><USER61> >the decision to quit over Dragonfly is mainly a voice of support for neoconservative anti-China warmongers.

I... must be reading you wrong. Can you please explain?

<comment><USER60> The idea that the will of the Chinese people does not matter OR is not being reflected by the Chinese government's policy.

Then the conclusion from this that the Chinese people are victims of their government, or dupes.

This is step one in declaring a state illegitimate, which is always done implicitly or explicitly when the US wishes to frame a country as the enemy.

This is the view of Saddam Hussein's government that was used to sell the Iraq war. The idea that destroying a lot of infrastructure and removing him from power was actually doing the will of the Iraqi people.

Applying the label of victims or dupes to an entire population for some reason does not trigger any skepticism in the US. The view is paternalistic and packed with implicit white supremacist ideas, such as the idea that the Chinese people and culture are not naturally suited to undertake steps to change their government.

The ideas is similar to critiques aimed at Haiti's government by avowed racists, yet for some reason Americans are much more eager to believe this kind of white supremacist nonsense about the Chinese people.

It is clear that elements in the US wish to escalate things with China. Trump's trade war, the announcement by an FBI leader that many Chinese academics and cultural groups are espionage oriented, the chip implants on motherboards story, as well as the many stories about bad living conditions and failing infrastructure in China, one the other day about a bunch of runners cheating in a Chinese marathon, etc. These run like clockwork in American papers.

So by adopting the same set of premises about the relationship of the Chinese people and their government, the anti-Dragonfly activists are laying the planks for the neoconservative case that the Chinese government needs to be replaced.

This comment might be downvoted, but I'm quite sure there will not be a coherent counter-argument provided by anyone who disagrees and who also claims to oppose things like the Iraq war.

I suspect that the people concerned about Dragonfly are the same people who would have protested a Google decision to launch in Iraq on the basis of various social policies that existed there under Baath party rule. This is pretty much the definition of neoconservatism.

There is no peaceful neoconservatism, there is always a stick that must be used to punish those who are holding back the idealistic sort of progress that the neocon narrative claims will exist if only various wars can happen.

<comment><USER12> > _I 'm quite sure there will not be a coherent counter-argument provided by > anyone who disagrees and who also claims to oppose things like the Iraq > war._

Your whole point is because party A wants something, anyone else who may ageee to any of their arguments (even those who don't even "agree" but came up with the same thing from first principles in a clean lab environment), wants that thing party A wants, too. You're using one gang of villains to excuse another, that doesn't even stand on its own, it collapses before any counter-argument can reach it. It's like pointing out the Mafia drinks water and then claiming everybody who thinks water is necessary is aligned with the Mafia.

> _The idea that the will of the Chinese people does not matter OR is not > being reflected by the Chinese government 's policy._

> _Then the conclusion from this that the Chinese people are victims of their > government, or dupes._

Dissidents have been murdered for decades. People who have family in China simply cannot openly speak. When they post on HN, it always ends with stuff like "I didn't fully read the article" or "I don't understand". I can't blame them, but I also can't pretend that's not going on.

So, what's wrong with that idea and the conclusion? I mean, I think you want to imply there's something wrong with it, but it's hard to tell, since both those two "sentences" don't even have a verb.

> _This is the view of Saddam Hussein 's government that was used to sell the > Iraq war. The idea that destroying a lot of infrastructure and removing him > from power was actually doing the will of the Iraqi people._

No, Colin Powell made a presentation in front of the UN, sweating very much IIRC, talking about trailers and chemical weapons and nukes.

If you're going to claim it was ever mainly about the Iraqi people, I'll need citations. I wasn't just against the Iraq war, it's the reason I can write somewhat coherent English. For me, that war was "Hitler attacking Poland", I tried to stop it before it started by arguing on the interwebs to the point of exhaustion. Even today, several times a year I bring up the idea that an arrest warrant against Bush and Blair would be the _beginning_ of a move back into civilization. I think it's disgusting that Trump rehabilitated Bush, that him slipping Michelle Obama some candy during McCain's memorial service is now "cute". I think Americas obsession with empty language and "leadership" is one of the examples of how George Carlin was right when he said "Germany lost WW2, fascism won it".

etc.

So? Doesn't make me excuse concentration camps or pretend totalitarianism isn't totalitarianism. Read "Origins of Totalitarianism". Actually do visit concentrations, and actually live in cities where you know Jews have been dragged from their homes, as the neighbours looked away. But spare me your assumptions about what "the people concerned about Dragonfly" are or want.

> [..] so that it is as if everybody melted together into giant being of > enormous proportions. This too does the for a totalitarian environment so > well prepared vernacular express in its own way when it no longer speaks of > "the" Russians or "the" French, but tells us what "the" Russian or "the" > Frenchman wants.

\-- Hannah Arendt, "origins of Totalitarianism"

> _I suspect that the people concerned about Dragonfly are the same people who > would have protested a Google decision to launch in Iraq on the basis of > various social policies that existed there under Baath party rule._

What kind of argument is this? You suspect something you can't prove and nobody can disprove, because it takes place in some alternative universe?

> _This is pretty much the definition of neoconservatism._

You mean that thing going on in that alternative universe? And you actually think that's an argument that requires a counter-argument?

So basically, because you claim to know (well, you just "suspect", but that's just the plausible deniablity variant, just like the "I'm not sure I agree" and other phrases HN is full of) what someone would have done 15 years ago in a situation that never was, you can now call everyone who is critical of Dragonfly or Chinese totalitarianism neo-conservative?

[https://news.ycombinator.com/item?id=18513113](https://news.ycombinator.com/item?id=18513113)

> _Basically, HN is run like Singapore. It's very tidy but there is an > authoritarian dimension that is unsettling._

I came to this comment from that comment, and now I'm confused to put it mildly. How can the same person who wrote that have written what I just responded to? How can you object to manipulation on a private website, but imply totalitarianism represents the people under its heel? Why not simply say "the average HN users is reflected by this policy" and that's that?

</comment></comment></comment></comment><comment><USER62> Why are we surprised they're okay with censoring in China when they already censor here at home, for example conservative voices on Youtube.</comment>


Suicide Bomb Trainer in Iraq Accidentally Blows Up His Class - <AUTHOR> http://www.nytimes.com/2014/02/11/world/middleeast/suicide-bomb-instructor-accidentally-kills-iraqi-pupils.html?smid=re-share

<comment><USER2> This guy unwittingly killed 21 would-be suicide bombers. He may have single- handedly prevented more terrorist attacks than the entire illegal mass surveillance program run by the NSA. Can we give this man a medal?

</comment><comment><USER3> Further proof that online education is the way to go.

</comment><comment><USER4> I seriously had to do a double take and make sure this wasn't an article out of the Onion. It'd be even funnier if somehow the instructor survived, -- people can say--oh you don't want to signup for his class, he blew up the last one lol.

On another note, heaven's running out of virgins... as they just lost another 1694 virgins in a single day.</comment>


Photos of Kilauea's Lava Fissures on Hawaii's Big Island - <AUTHOR> https://www.theatlantic.com/photo/2018/05/photos-of-kilaueas-newest-lava-fissures-on-hawaiis-big-island/559751/?single_page=true <comment><USER2> So what happens to all this lava? Does someone haul it away and rebuild the roads, or are those neighborhoods just abandoned?</comment>


DIY: kernel panic OS X and iOS in 10 LOC - <AUTHOR> https://medium.com/@oleavr/diy-kernel-panic-os-x-and-ios-in-10-loc-c250d9649159

<comment><USER2> [http://www.frida.re/](http://www.frida.re/) looks actually very interesting.

<comment><USER3> The author linked to the site something like 37 times in the article. It made me not want to click through, thinking the article was just a shill blog post. Your short comment reinforces this.

Why exactly do you think Frida looks interesting?

<comment><USER2> I haven't tested it yet but I like to be able to inject into running native apps and control them, debug them, etc.

On MacOSX, there is the SIMBL project which enables such a plugin architecture for any OSX apps. E.g. you can get extra features like window-always-on-top, window-transparency, etc. And you can automate / script some apps which would not be scriptable otherwise or to such extend. Or you could add specific features to applications. E.g. Dropbox on MacOSX uses a technic like this to display some state-icon of its Dropbox directory in Finder.

Some links to SIMBL: [https://github.com/norio- nomura/EasySIMBL](https://github.com/norio-nomura/EasySIMBL) [https://code.google.com/p/simbl/wiki/SIMBLPlugins](https://code.google.com/p/simbl/wiki/SIMBLPlugins)

SIMBL would inject other native code into to some app. In most cases you would inject other ObjC code.

I like the idea to dynamically script or mess around with an app. For that reason, I used SIMBL to inject Python + iTerm + PyObjC. That way, you can interactively interact with any app with Python. [https://github.com/albertz/Pyjector](https://github.com/albertz/Pyjector)

A similar project is this: [https://github.com/albertz/FScriptAnywhereSIMBL](https://github.com/albertz/FScriptAnywhereSIMBL)

And this Frida looks like a similar more modern project with JavaScript and support for Windows, Mac, Linux, iOS and Android.

</comment></comment></comment><comment><USER4> What does it look like when it crashes on iOS? Does just the app crash, springboard crashes or the device restarts?

<comment><USER5> Just tried with iOS 8.1 SDK. It seems that <mach/mach_vm.h> is not supported on iOS. So far, I failed to reproduce the crash/kernel panic with code snippet from the original post.

<comment><USER6> It is supported, just need an expanded SDK or you can provide the OS X variant of mach_vm.h and import that.

<comment><USER5> But clang did not treat it as an error when I commented the #include line. I have no idea if it was actually dynamically linked.

<comment><USER7> Includes don't control linking, and traditional C did not require function prototypes, so most compilers (in non-C++ mode at least) will happily compile calls to unknown functions, it just assumes a default signature.

<comment><USER5> I know that and mach_* are supposed to be dynamically loaded. But what I failed to get is to reproduce the kernel panic, not to build and run on my iPhone 5. By now that piece of code could run but only result in normal crash, not kernel panic.

</comment></comment></comment></comment></comment></comment><comment><USER8> I set up a Xcode project to test it on iOS [https://github.com/jdmoreira/KernelPanic-10LOC](https://github.com/jdmoreira/KernelPanic-10LOC)

It doesn't work on my device running iOS 8.1.2 Can someone confirm?

 _Edit: It works now!_

<comment><AUTHOR> Is it a 64-bit device? Does the program crash or exit gracefully? If it crashes, try bumping the library index argument here:

library = (char *) _dyld_get_image_header (1);

If you're unlucky library at index 1 contains mach_vm_read_overwrite and is suddenly no longer executable (since we change its second memory page from R-X to RW- due to stock kernels not allowing RWX pages).

<comment><USER8> I changed the code to [https://gist.github.com/cfr/425812debdb2a6d0449f](https://gist.github.com/cfr/425812debdb2a6d0449f)

It works now! Device restarts ;)

<comment><AUTHOR> Excellent! :)

</comment></comment></comment></comment><comment><USER9> Hello I just checked out Frida (been meaning to just forgot the name)

I get a kernel panic in Mac OSX Mavericks (10.9.4) running this

import frida p = frida.attach("cat") print(p.enumerate_modules())

Not sure if this is a similar problem or not but doing print([x.name for x in p.enumerate_modules()]) instead works just fine.

Edit: Looks like the problem may be attaching to a program a second time. Not sure if I need to run some detach command or whatnot.

<comment><AUTHOR> Hey,

and thanks for checking it out! The currently released version of Frida, 1.6.8, doesn't have the work-around and triggers the kernel panic described in the blog post. The work-around landed in git last night and will be part of 1.6.9 to be released soon; hopefully by tomorrow if all goes to plan. Feel free to clone and build Frida yourself if you'd like to play with it in the meantime (or make sure you never attach more than once to any process). Sorry for the inconvenience!

Feel free to drop by #frida on irc.freenode.net, btw!

Cheers!

</comment></comment><comment><USER10> A very nice reminder that there's no such thing as code without bugs.

<comment><USER11> I see it as a reminder not to run software than you cannot patch yourself.

<comment> k-mcgrady So unless you're a software developer don't use software?

<comment><USER11> Unless you're a software developer, don't call yourself a "hacker" and don't waste your time on Hacker News.

<comment><USER12> I'm a developer of 20+ years and have no idea how to patch most open source software and have it "just work".

Software has progressed to the point where the complexity and interconnectedness is far beyond what any one developer can do. Everyone just knows a few subsections.

<comment><USER13> Some projects also have terrible project layouts. I have to poke around for several minutes just to find the source folder.

</comment></comment></comment></comment></comment></comment><comment> max-a Well, on my rMBP I don't need to write a single line.

<comment><USER14> You probably have a hardware problem or kext. Haven't had a KP in years.

</comment></comment><comment><USER15> Damn.</comment>