Reverse-engineering the adder inside the Intel 8086 - <AUTHOR> http://www.righto.com/2020/08/reverse-engineering-adder-inside-intel.html <comment><USER8> > The 68000 had address adders, separate from the ALU.

It actually had a 16 bit "complex ALU" and two 16 bit adders (or the other way around - I can't get to my old documents in my office). The ALU was for the D registers, one of the adders was for the A registers and the last one could be shared for both to add bits 16 to 31.

You could do a one cycle addition of an address in parallel with a one cycle ALU operation on 16 bits of a data register (very common) or two cycles for 32 bits. You could also do a 32 bit add on a data register in a single cycle if you were not also calculating an address. So you could crunch 48 bits per clock.

</comment><comment><USER9> It's surprising, to me, that the address adder and the ALU are so comparable in area. I'm guessing the adder is like 1/3 the size of the ALU even though the ALU has so much more functionality.

My guess is the flip flops needed to register the operands and resultant compromise a significant chunk of the area in both and the extra 2/3 area in the ALU is the area of the combinational logic to implement all the extra math functions.

</comment><comment><USER10> I'm curious to know whether (if you live in the Silicon Valley area) you have gotten access to talk to people who could share the original intent/design of the circuits you study? I.e. to see how close you got it or left out any observations? It would be interesting to learn how they actually intended the design to work and why it looks the way it does, compared to what you found!

Or is the idea really more to see what can be discerned by someone receiving the chip and trying to sleuth out what connections and parts do what?

</comment><comment><USER11> I'm amazed at the large fraction of the die area that the adder takes.

<comment><USER12> Yes, it gives you an idea of the simple building blocks that make up the 8086. In a modern processor, the blocks on the die are a floating point unit or something. But on the 8086, the blocks are things like an adder or latch.

</comment></comment><comment><USER13> > multiple offset/segment combinations could address the same physical memory > address.

Would this have anything to do with memory exploits on the entire x86 range of processors?

</comment><comment><USER12> Author here, if anyone has questions.

<comment><USER14> Has enough time passed yet to acknowledge that the x86 ISA is a really bad design?

<comment><USER12> The funny thing is that the Intel 8800 (iAPX 432) was supposed to be Intel's big new thing, a 32-bit processor designed for object-oriented languages. Unfortunately, that project fell behind schedule and Intel quickly threw together a chip, the 8086, so they'd have something to sell until the iAPX 432 was ready.

Unexpectedly, the 8086 took over the world and the iAPX 432 was a failure. The bad design that shipped beat the good design that was late and slow. Intel repeated this with the Itanium, their super new design that was supposed to take over in 2001. Again, the superior design was slow, late, and a market failure.

I'm not sure what the moral of this is. Maybe it illustrates the "worse is better" principle.

<comment><USER11> Itanium 2 and beyond were fast, but no argument that it failed. Even so I read that HP took final orders for Itanium systems this year.

SPEC benchmarks fom 2003:

        CINT2000
        Itanium 2 1.5 GHz - <USER2>
        Xeon 3.06 GHz - <USER3>
        Opteron 1.8 GHz - <USER4>

        CFP2000
        Itanium 2 1.5 GHz - <USER5>
        Xeon 3.06 GHz - <USER6>
        Opteron 1.8 GHz - <USER7>

<comment><USER14> Amd64 caught up and passed it when?</comment></comment></comment></comment></comment>


Pending Postal Service Changes Could Delay Mail and Deliveries - <AUTHOR> https://www.npr.org/2020/07/29/894799516/pending-postal-service-changes-could-delay-mail-and-deliveries-advocates-warn <comment><USER3> But isn't this kinda obvious? Current WH administration is dead set to stop mailin voting. They've found a way to make that happen. I think we're all missing the obvious here.

<comment><USER4> I've seen this conspiracy theory many times, but no one has yet explained how a day or two delay will stop mailin voting.

People also somehow think that the post office won't be able to deliver so much mail. Which also doesn't make sense, it's a single envelope per house, they deliver more junk mail than that.

Edit: I should add I'm 100% in favor of mailin votes always, not just now. I simply do not believe that this postal slowdown is in any way connected to those who oppose it. And that's for the simple reason that it can't accomplish that.

<comment><USER5> There's no conspiracy theory. It's historical record the lengths this country has gone to disenfranchise votes: 3/5ths personhood, poll taxes, literacy tests, multiple hour-long queues, shuttering most poll stations for large populations, warehouses left full of voting machines, and, seriously, just go look at Dan Crenshaw's district. You don't have to "stop mailin voting," you just have to make it unreliable and burdensome.

There's no conspiracy here, it's out in the public for all to see.

<comment><USER6> For comparison, it takes me about 15 minutes to go voting in Germany. That includes walking to the polling station, someone checking my id and me checking a few boxes on a paper ballot.

There is usually no queue and we don't have voting machines because they can be easily manipulated, as has been demonstrated a number of times.

Elections are held on Sundays, when most shops are closed, so that everyone can participate.

<comment><USER7> In the US, elections are held by the states, not the national government. So it is up to the states where and how many polling stations there are. Depending on the party in charge at the state level, this has been used to make it more difficult for certain sectors of the population to vote.

<comment><USER8> In times of COVID, however, mail only voting is the best alternative.

And the USPS has informed states that it may take up to 2 weeks to deliver mailed ballots.

What that means is for mail in votes to count (which again, will be more popular considering COVID) on Nov 4th, you will need to mail your vote by Oct 20th to guarantee it reaches assuming USPS is correct in its 2 week estimate.

The current administration is already laying down the foundation for votes that reach after Nov 4, even if they were postmarked before (which I believe is all that is needed) to be rejected. He tweeted today that the votes must be counted by the end of Nov 4 otherwise they would be illegitimate.

<comment><USER4> > He tweeted today that the votes must be counted by the end of Nov 4 > otherwise they would be illegitimate.

He tweets lots of stupid things. It's not actually true. Each state can make their own rules on postmark vs receipt date.

People seem to forget that voting in this country was designed to work in a time where it took 2 months to count all the votes, with the result arriving by horse. Nothing has changed in the rules since then.

People will be annoyed at waiting if there is a delay, but nothing will actually break.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> I worked on a USPS integration for years. I have mixed feelings about the USPS but one thing is clear. They price incorrectly. It should have never been less expensive to ship a parcel from Beijing to Washington, then from Detroit to Washington.

Many of USPS' problems could be solved simply by raising prices. The USPS clearly wins business on the last mile service level, and it would open up new opportunity for others to deliver Amazon packages if prices went up.

One other little known fact about the USPS is they cut lucrative deals for big customers. Negotiated Rates (NSA) can allows companies such as Amazon to buy postage at a significant discount. These deals should be eliminated. Why should a poor person pay more for postage than Jeff Bezos to ship the same thing?

From left field this is one of my ideas: Post offices could be replaced by adopting a NinjaVan model. Why can't every corner store in San Francisco be a post office? It would be amazing.

<comment><USER10> Netherlands already moved post offices into a small corner shops.

Portugal has been adding more services like telecom and banking.

<comment><USER11> Same in Finland. I believe under 15 Posti-operated dedicated post offices remain - just yesterday they closed their former HQ post office in the Post Building: [https://yle.fi/uutiset/osasto/news/end_of_an_era_as_posti_ex...](https://yle.fi/uutiset/osasto/news/end_of_an_era_as_posti_exits_former_helsinki_head_office/11455654)

There are 900 post offices and approx. 2000 parcel lockers (population 5.5M).

They have also taken steps due to the dramatically decreased amount of mail in the last decade (over 50% down since 2010 - this year yearly decrease has been 15-20% so far):

\- Yearly price increases of letter mail (50g letter stamp is now at 1.75€).

\- Slowed down the basic letter services (first class stamped letter went from 1 day to 4 days).

\- Reduced delivery frequency (no mail delivery on Tuesdays if possible).

\- Mail may now be delivered later during the day.

And of course large layoffs, which have probably resulted in a reduction of service quality - public complaints seem to have increased.

</comment></comment></comment><comment><USER12> It looks like it's being setup to fail by the administration

<comment><USER13> Yes.

First, so that it can be privatized and turned over to the free market, for which I will offer no opinion. That can be argued effectively to no real end on both sides, similar to a discussion about Amtrak or farming subsidies.

Second, the fact that the Postmaster is a Trump acolyte in an election year where there will be a record number of vote-by-mail responses should tell you all you need to know about what the true motivations are.

<comment><USER14> The one thing that bothers me about the vote for mail stuff: We vote in November, but the actual electoral college stuff happens in December.

The certification happens a lot later then election night. There is 0 way you can slow the USPS down enough for it to matter.

<comment><USER15> Mail in ballots still need to get to the voter before Election Day. If the voter doesn't deliver it to a post office or a poll station before Election Day it doesn't get counted. Can you imagine how pissed people will be if Election Day rolls around and fewer than 50% of mail-in voters have been delivered ballots? Taxation without representation doesn't go over well in the USA.

Yes, people can go to a polling place and file a provisional, but the whole point of mail-in is so we don't have to. Also, with COVID affecting older people more than younger, there may be a shortage of poll workers.

Also prep time: The county election office needs a reliable estimate of how long the mail leg will take so they can target the process of printing and sending the voter package. They need to be able to print some of the packages on short notice for newly registered voters and party affiliation changes.

<comment><USER4> The voters are sent ballots weeks in advance. A day or two delay makes no difference.

<comment><USER15> If that's an accurate description of the delay, then I agree.

However, I've seen tweets suggesting that recent (since COVID lockdowns) delays of more than a week are currently not uncommon and I don't have any evidence that the USPS is shrinking their backlog right now. Given the current trajectory (eg. the current Postmaster General is denying overtime), I expect the possibility of many ballots missing delivery by Election Day unless USPS prioritizes those deliveries.

</comment></comment></comment></comment></comment></comment><comment><USER16> I send hundreds of packages a month. Last two years were great - <USER2> everything would always get there within 2-3 days with minimal delays. About a month ago it started to get really bad all at once. Packages from CA to OH routed through HI (what?), packages reported as delivered disappearing with no record, etc. we'll see what happens in Black Friday and cyber Monday. I predict a lot of ruined christmases.

<comment><USER17> I suspect something unusual is happening too. I've been watching a tiny package I ordered being shipped from San Mateo to Palo Alto via UPS. It has been 7 days, and for the last 4 days its status in San Leandro has been: "Package departed UPS Mail Innovations facility enroute to USPS for induction" Can't wait for that dark chocolate cocoa floss!

<comment><USER18> Have you considered that the "unusual" coronavirus pandemic might be the cause of your mail delays?

<comment><USER17> Maybe. I receive several packages a week, and this is the first time I've seen a weird delay since the pandemic started. That's why I found it unusual.

</comment></comment></comment></comment><comment><USER19> Considering how bad it is in Chicago. I can't imagine how bad it's going to get.

What really ticks me off is that it's tolerated that they're that bad. They won't even mark a package as delayed. They'll intentionally scan it as delivered right before the end of "window of delivery" and deliver it when they feel like it. Could be tomorrow could be next week.

<comment><USER20> I'm in a small city of ~40k.

The same sort of shenanigans are happening here.

Amazon is reporting packages as handed over to carrier very early in the morning, but all packages are getting ingress scanned either right before delivery one day later, or about an hour after all the trucks depart with their delivers for that day.

I haven't had a single package of about 8 be undelayed by the USPS in the last two months, and the delay had been two days on some.

It's gotten bad enough that Amazon is shipping to me with UPS a lot more than they used to

</comment></comment><comment><USER21> One thing of interest, I was very recently contacted by USPS, did a user interview with them and was subsequently put in touch with an account representative. That feels like a positive change.

On the other hand, our packages (all sent via Priority Mail which is supposed to be 2-3 business days though has changed to 2-4 business days) have been getting delayed recently and in some cases taking as long as 14 days.

<comment><USER22> Yeah I recently sent something overnight to NYC. It didn't even leave San Francisco for four days. Tried to contact the post office but no response.

</comment></comment><comment><USER23> Going to be the devil's advocate on this one. The current policy creates an incentive for unnecessary overtime. That can distort the real demand for labor. Eliminating the incentive could allow the USPS to find out the actual demand, and hire the right number of workers to get the mail out on time.

</comment><comment><USER24> What's interesting is while this is happening I'm seeing a strong push in placed like reddit for folks to register to vote by mail. It kind of feels like election interference - intentionally slow down the mail, and at the same time encourage Democrats to vote by mail.

</comment><comment><USER4> Does anyone else remember maybe 10 or 20 years ago the post office did this whole restructure to significantly increase speed?

It used to take 5 days for first class mail and they reduced it to 2, at significant cost, but they were trying to complete with email.

Seems like we are going back to those days. But maybe it doesn't matter, do many people really rely on mail speed these days when you can send an email?

<comment><USER25> Saying as 90% of my packages are delivered by USPS, yes I care about mail speed. Letters aren't the only thing handled by the post office. Also when I need to get my credit card replaced for some reason you better believe I care about speed of delivery. I'm sure I could list more examples.

</comment></comment><comment><USER26> They aren't already?

I've seen USPS tracking be very misleading, with Expected Delivery by 8:00PM...and the next day the same status, until finally you see Out for Delivery, which is the day it will actually arrive.

Between the terrible tracking, and the occasional goofy routing detours, USPS is doing themselves no favors.

<comment><USER27> Three times in the past year, I've had packages marked as "Delivered at/in mailbox" that weren't actually delivered until 2-3 days later. The most recent was particularly worrying, since it contained my new passport (which I'd already been waiting on for 5 months since passport processing had mostly been shut down due to COVID). This was at different addresses, with different local USPS destination facilities.

It seems they're aware that it's an issue, since it says in their FAQ "package may show as 'delivered' but could take additional 24 hours". I assume it happens when they get behind somehow and just mark a lot of stuff delivered to meet their metrics.

</comment></comment><comment><USER28> >> late-arriving mail will now be left behind by carriers and delivered the next day. Overtime will be eliminated.

This is a pretty negative change, without overtime the whole system will move like molasses.</comment>


Drowning Good Ideas with Bloat. The tale of pkg.m4. - <AUTHOR> http://tirania.org/blog/archive/2012/Oct-20.html

<comment><USER2> There are several wrong things with that post. First of the PKG_CHECK_MODULES macro checks that pkg-config is present on the system and presents a nice error message if it isn't. Second, PKG_CHECK_MODULES can be used to specify several dependencies:

        PKG_CHECK_MODULES(DEP, foo udev >= 999 neverhere)

Then if one or more of the dependencies aren't met, all problems are shown:

        Package foo was not found in the pkg-config search path.
        Perhaps you should add the directory containing `foo.pc'
        to the PKG_CONFIG_PATH environment variable
        No package 'foo' found
        Requested 'udev >= 999' but version of udev is 175
        Package neverhere was not found in the pkg-config search     path.
        Perhaps you should add the directory containing `neverhere.pc'
        to the PKG_CONFIG_PATH environment variable
        No package 'neverhere' found

It may not seem like much, but for someone not used to compiling stuff from source it means a lot that all missing dependencies are shown at once. A sloppy shell script to check for the same dependencies would mean that the user would first see "foo not found" and go and download that package, then "udev >= 175 required" and when that is fixed the third error and so on.

Also, the error message "You can download mono from www.go.mono.com" isn't very useful for most Linux users. The correct remedy on distros that ship with devel packages is to figure out the name of the package that supplies the include headers and pkg-config file and istall that. pkg-configs error message aren't that great either, but at least they are easily recognizable.

In my opinion, autoconf is a very misguided build system. It is designed so that it should have no other requirements on the compiling users system other than a POSIX environment, a shell and a C compiler. It is a completely unnecessary constraint because nowadays everyone is able to install great languages like Python, Ruby, Scheme and many others much more suitable for writing build configuration systems than shell script. There is no point anymore in using the M4 language to generate a 1000 line configure script when a 50 line Python/Ruby/$OtherNiceScriptingLanguage would work just as well.

<comment><USER3> > It is a completely unnecessary constraint because nowadays everyone is able > to install great languages like Python, Ruby, Scheme and many others much > more suitable for writing build configuration systems than shell script. > There is no point anymore in using the M4 language to generate a 1000 line > configure script when a 50 line Python/Ruby/$OtherNiceScriptingLanguage > would work just as well.

First, autoconf isn't a build system. It's just a 'configure' script generator.

It's nice that the configuration script runs anywhere you can find a POSIX environment. It's not actually that hard, either; it mostly just runs commands and checks the result code. The bulk of the knowledge stored in autoconf is the knowledge of how to write those tests, which tests are necessary, and what flags you need on various platforms.

I think the big problem here is not that the configure script is a portable shell script, but rather, that it's generated by an M4 script. Don't forget that Python itself has a configure script, and writing the configure script in Python would create a bootstrapping problem (it would add Python to the list of programs that need to be cross-compiled on new systems).

</comment></comment><comment><USER4> So Miguel objects to any use of third-party m4 macros at all? Because these are the possibilities:

1\. You install from your package manager

2\. You install from a source tarball, which contains a configure script

3\. You install the bleeding edge version from a development repository

4\. You do 3. but somehow you managed to break your autotools install (and I don't really want to know how you did), or you're running a long-eoled distro that ships an ancient version of pkg-config that doesn't include the pkg.m4 macro.

The fourth scenario can cause macro trouble, but it takes a sophisticated kind of user to install from development repositories rather than a better- supported option (not to mention breaking autotools), so I think it's on those users to troubleshoot and fetch the missing macro.

</comment><comment><USER5> The "simple" code completely breaks with cross-compilation. This is because the autoconf macros will first look for the CHOST-pkg-config program (e.g. armv6j-hardfloat-linux-gnueabi-pkg-config), which will normally be a wrapper around pkg-config specifying PKG_CONFIG_SYSROOT_DIR to make pkg-config look for stuff in the target prefix instead of the host. For example, Gentoo's "crossdev" tool automatically generates such a wrapper.

So if we all just start "simplifying" the code like that, we'll end up with lots of cross-compile breakages for packages which cross compiled all right before, and I suppose many people will find the best fix to just revert to using the autoconf macros again, as opposed to hardcoding the procedure for finding the right pkg-config.

</comment><comment><USER6> To me, this rage is misdirected.

The instinct to take a repetitive pattern and replace it a higher-level abstraction is a good one. It is only because we do this that software is comprehensible at all.

If a person's attempt at doing this leads to terrible problems in practice, problems that have nothing to do with the difficulty of the problem itself but rather with configuration or peculiarities of the implementation, then that is a sign that your entire system is built on a mountain of sand.

His conclusion is that "pkg.m4 is a poison that is holding us back." No. The poison is a pile of m4, shell, and autotools that are held together with bubble gum and chicken wire.

</comment><comment><USER3> I came to the conclusion long ago that the world is ready for an autoconf replacement (note I did not say "new build system" or "replacement for make"). It's too arcane, and it's long since grown too large for M4.

Projects like CMake, SCons, and Jam try to obviate the need to write make files, but they treat the configuration step as an afterthought.

<comment><USER4> One thing that improves reliability is in fact to get rid of the configuration step. Not just the workarounds for broken shells or old Solaris/HP-UX versions with anemic libcs, but the principle of disabling some features or switching to alternative implementations when something isn't found. It just creates new code paths and combinatorial complexity, probably broken because the developer's environment will never trigger them. Distro packagers already prefer hard fails to know when they are missing a dependency.

To compensate, the replacement just needs to offer better facilities for triggering installs of the missing dependencies. That's basically the path taken by modern languages (Go, Python, Ruby, Node… gnome's jh_build is part of the same trend): they have tools to fetch source dependencies from the network, to install in custom prefixes that don't require root, to create isolated prefixes so that multiple versions can be installed in parallel, to freeze known-good versions of the dependency graph.

But those little knobs so you can build your own customised version with decals and your own red spoiler? No one will miss them.

<comment><USER3> Yes, there are lots of little knobs used by those wacky Gentoo folks, and those dumb old shells on Unix of decades past. My ideal replacement would get rid of those checks and assume you have a working POSIX shell and C89.

However, there are also optional dependencies. SoX can use FFTW to make spectrograms, but it's optional. You can use x264 from ffmpeg but it's not necessary. Emacs will build with GTK 2 support, GTK 3 support, or neither; and it will use whatever PNG/JPEG/XML/etc libraries happen to be installed but doesn't care if they're not present. GCC will use Graphite whet available. A few programs will happily play audio through libao or Core Audio or ALSA. There's combinatorial complexity there in theory, but it's not hard to isolate optional dependencies in practice, most of the time.

And suppose you want to use some feature available on new Linux kernels. It's just _easier_ to write an autoconf test rather than try to come up with some convoluted preprocessor test.

There are also important knobs to tune: look at LibGMP, ATLAS, or FFTW for examples. Old PowerPC Macs could run 64-bit code if you asked but ran 32-bit by default, so you'd compile GMP for 64-bit and get a huge performance boost.

And some options are only useful to developers, like enabling -Werror (which should never be enabled by default in a source release). The configuration step bakes these options into the makefile so you can still just type "make".

You have a good point about hard failing when dependencies aren't present, and the configuration step allows you to fail early and provide an intelligent error message.

I'm not convinced that eliminating a configuration step improves reliability. Just think of how dirt-common autoconf scripts are, in spite of how much of a pain autoconf is to learn.

<comment><USER7> A short set of config options works well for most things though, rather than autodetect. After all most people will be packaging and need to control exact dependencies. I dont mind reading through a config file to tweak these settings.

</comment></comment></comment></comment><comment><USER8> I am of the opinion that the whole autohell toolset has outlived its usefulness. It was important back in the day where when there were a million different UNIX systems. But today, we have something like 5-6 left and most of those are doing the majority of POSIX right.

It is kind of odd we still are doing this today. It is somewhat of a mistake.

</comment><comment><USER9> To paraphrase Jamie Zawinski, some people, when confronted with a problem, think "I know, I'll use m4." Now they have two problems.

I know I'd rather have fifty interlocking regular expressions than ever have to touch m4 again.

</comment><comment><USER10> This from a GNOME/Mono guy--oh the irony!

<comment><USER3> From "a" GNOME/Mono guy? Read the byline again.

<comment><USER10> Oh, I know who he is, I just didn't want to imply that he's the only person driving GNOME or Mono development.

</comment></comment></comment><comment><USER11> Miguel IS a Gnome/Mono guy. Or at least he was a gnome guy, and his contributions have helped many people all over the world.</comment>


Apple iPad Air (A14 Bionic) - <AUTHOR> https://www.apple.com/newsroom/2020/09/apple-unveils-all-new-ipad-air-with-a14-bionic-apples-most-advanced-chip/ <comment><AUTHOR> comparison between the iPad Pro 11" (2nd model) and the iPad Air 11.9" 4th gen:

[https://www.apple.com/ipad/compare/?device1=ipad- pro-11&devi...](https://www.apple.com/ipad/compare/?device1=ipad- pro-11&device2=ipad-air-4th-gen&device3=ipad-8th-gen)

the Pro comes with a better camera (ultra wide), more maximum storage (1TB vs 256GB), slightly higher resolution at same DPI and higher screen brigthness (600 nits vs 500 nits)

</comment><comment><USER2> It doesn't seem to be much more powerful per core than the A13.</comment>


Kristof calls for a boycott of Bing (relating to Chinese censorship) - <AUTHOR> http://kristof.blogs.nytimes.com/2009/11/20/boycott-microsoft-bing/

<comment><AUTHOR> Unfortunately, all the large companies - Microsoft, Google, Yahoo etc. have demonstrated their willingness to obey censorship commands from the Chinese govt.

A few years ago, yahoo, microsoft and google were all criticized for censoring search results. Their defense at the time was that self-censorship was the only way they could operate in China.

from [http://en.wikipedia.org/wiki/Internet_censorship_in_the_Peop...](http://en.wikipedia.org/wiki/Internet_censorship_in_the_Peoples_Republic_of_China#Search_engines) [Attempting to search for censored keywords in these Chinese search engines will yield few or no results. Google.cn will display the following at the bottom of the page: "According to the local laws, regulations and policies, part of the searching result is not shown."]

<comment><USER2> Well, it is still better to provide people some access to search engine than none at all. If they would not agree, chinese government would close it altogether.</comment></comment>


86-DOS - <AUTHOR> https://en.wikipedia.org/wiki/86-DOS <comment><USER2> One of my first jobs as a kid was working for a guy who owned a Seattle Computer Gazelle. He was still using that big 8086 pedestal for some things in his office around the time 80386 PCs were already out.

At one point, he mentioned of his Gazelle, "This might be the one DOS was written on." I never knew whether he meant that model or that exact unit. I understand he'd been very involved in the early microcomputer scene in the Pacific Northwest, and I wouldn't be surprised if he owned some unique piece of history from there.

[https://www.old- computers.com/museum/computer.asp?c=614&st=1](https://www.old- computers.com/museum/computer.asp?c=614&st=1)

[https://www.old- computers.com/museum/adverts/SeattleComp_Gaz...](https://www.old- computers.com/museum/adverts/SeattleComp_Gazelle_Advert_1.jpg)

[https://www.old- computers.com/museum/adverts/SeattleComp_Gaz...](https://www.old- computers.com/museum/adverts/SeattleComp_Gazelle_Advert_2.jpg)

[http://classiccmp.org/cini/gazelle.htm](http://classiccmp.org/cini/gazelle.htm)

</comment><comment><USER3> I met Tim Patterson back in late '81 or early '82 I was working for Micropro (WordStar) at the time in San Rafael and they flew me up to Seattle. I guess we discussed porting WordStar to SCP-DOS but it's so long ago!

</comment><comment><USER4> Oh poor Tim Paterson.

Later M$ hire him to port MS-DOS correctly to IBM PC.

But biggest loser is Gary Kildall and DR/DOS. This is discussed here: [https://en.wikipedia.org/wiki/Gary_Kildall#IBM_dealings](https://en.wikipedia.org/wiki/Gary_Kildall#IBM_dealings)

</comment><comment><USER5> >"Commands The following list of commands is supported by 86-DOS.[23]

Internal commands

CLEAR COPY DIR ERASE RENAME TYPE

External commands

ASM CHKDSK DEBUG EDLIN HEX2BIN MAKRDCPM RDCPM SYS TRANS

"

PDS: It's amazing just how spartan 86-DOS was, compared to the later (and more well-known) MS-DOS versions...

Also note the appearance of HEX2BIN, which is arguably (in some form, on some computer) the first command-line based "assembler".

</comment><comment><USER6> Why does this link go to the non-existent #HEX2BIN section? No recent edit to explain it.

<comment><USER7> (Not OP just curious) because [https://en.wikipedia.org/wiki/HEX2BIN](https://en.wikipedia.org/wiki/HEX2BIN) redirects there.

<comment><AUTHOR> yes hex2bin redirects to the 86-dos wiki

what i got from it was between the lines, since 86-dos is defunct it seems the command mnemonic, Hex2bin has been co-opted.

for example:

[https://github.com/GetMyle/hex2bin](https://github.com/GetMyle/hex2bin)</comment></comment></comment>


Carrot Dating - Date people by 'bribing' them - <AUTHOR> http://www.carrotdating.com/

<comment><USER2> My pet theory is that to meet great people (dates or not), you need to apply an "antifragile" approach. Basically, lower the cost of an interaction (which is meeting face to face not messaging for days) and meet many.

From this perspective, dating websites (and this one especially) are just horrendous. They have a very high price for each interaction: women waste time reading many messages, men waste time sending many messages.

I am betting that a couple of days talking to random strangers on the street gives you more results than months spent on these sites.

</comment><comment><USER3> And for added sexism, the whole page of course strongly implies ugly rich men ("fat chance") buying hot young girls.

</comment><comment><USER4> Checking the about page is pretty terrifying... Wade is founder of SeekingArrangement.com - the leading sugar daddy dating website, SeekingMillionaire.com - a millionaire matchmaking website, WhatsYourPrice.com - where singles bid for first dates, and MissTravel.com - the first travel dating website.

</comment><comment><USER5> Is this satire? Looking at the site the message I get is "Here are 12 women who will be bought, to some degree, for a price. Make a bid and see how much you get."

<comment><USER6> Let's not pretend real life is that much different. You can imagine scoring a date with a very popular girl just by some funny joke at the coffee machine all you want, but inviting her to a show or taking her out for dinner will be much more successful.

<comment><USER7> While impressing women with wealth certainly works, and there are some things you can straight-up buy[1] that will immediately boost your attractiveness, in general trying to win women over with favours (dinners, shows, shopping sprees) works against you. It signals that you're so desperate as to be willing to buy attention.

I'd say everything on that list except for coffee and maybe drinks is a sucker's bet.

[1] [http://www.ncbi.nlm.nih.gov/pubmed/19302732](http://www.ncbi.nlm.nih.gov/pubmed/19302732)

<comment><USER8> Aww, that citation is for the much less striking part of your post. Do you have a citation for the 'works against you' effect being stronger than the 'works for you' effect? It doesn't sound like something you can conclude without actual study.

</comment></comment></comment></comment><comment><USER9> Am I the only one that thinks online dating isn't superficial? Yes you have the pictures but you also have a complete rundown of the persons likes, dislikes, personality, what they do for a living, as well as how attractive they are.

Bribing people is a really good way to get bad dates. You have no idea of your shared interests, personalities, nothing at all to gauge whether you are of compatible attractiveness.

<comment><USER10> Online dating is certainly a lot less superficial than picking people up in a bar.

I've read somewhere that a significant fraction of modern relationships (a third?) start online. And they tend to be relatively stable. There's clearly something to be said for discussion interests before looking at the picture.

<comment><USER11> "Start online" does not mean "on online dating". My current relationship started "online" \- we met on last.fm and noticed that we went to the same concerts. From there on it's basically a regular dating story.

</comment></comment></comment><comment><USER12> 'WHAT IF A BRIBEE ACCEPTS THE BRIBE, BUT THE DATE NEVER HAPPENS?

Once a bribe is accepted, it is up to the members to communicate and plan the details of the date. Even after bribe acceptance, some dates may not happen.'

\- There is something gloriously appropriate about this being in the FREQUENTLY asked questions.

</comment><comment><USER13> I wonder what kind of people sign up to this... Then again, maybe they fit together.

</comment><comment><USER14> This app is a golddigger's wet dream

</comment><comment><USER15> And I thought I was cynical. Crumbs.

<comment><USER16> Reality is more cynical than the cynics? Ironic, no?

</comment></comment><comment><USER17> so beta</comment>


Show HN: NotePlan – Markdown task calendar and notes (Public Beta) - <AUTHOR> http://noteplan.co <comment><AUTHOR> We have finished the development of NotePlan with the help of our early private beta users and are looking now for more feedback!

What is NotePlan? It is a calendar, which can be edited using markdown. Todos or events marked as such will show up on the calendar. Beside the calendar you can store other details in normal notes.

Would love to hear your feedback! Check out the landing page to get the Beta.

</comment><comment><USER2> Looks interesting, will give it a try.</comment>


How Sam Walton Optimised Conversions in 1960s - <AUTHOR> https://blipmetrics.com/blog/how-sam-walton-optimised-conversions-in-1960s/ <comment><USER2> "In the end, Walmart won against Kmart and today is a $231B giant but as of now, it has a smarter and more agile competitor - Amazon.com. Will Walmart survive the shift to e-commerce? Only time will tell. Agility, being customer- centric and continous refinements made Walmart a retail giant and it seems the same philosophy made Amazon the champion of E-commerce."

Walmart will likely remain competitive for the future, because e-commerce will never fully replace online shopping. Sometimes you need it right now, and sometimes you just don't want to buy it online, you need the intangibles of touching, feeling and seeing the object you wish to buy in person.

<comment><USER3> This is probably the opinion every manager working at a traditional retailer has. Well, the answer is same-day (or even faster) delivery, better curation and presentation, new technologies such as VR and obviously also service such as generous return policies. It is very unlikely that e-commerce takes away 100% of the market, but it's another questions how many percent you have to take away from traditional retailers to destroy at least most of them.</comment></comment>


Algorithmic Online Dating and the Paradox of Choice - <AUTHOR> http://openresearch.wordpress.com/2010/07/10/algorithmic-dating-and-the-paradox-of-choice/ <comment><USER2> This rings true: no girl I've dated would have given my profile on a dating site a second look. You can't communicate over a profile what you can collaborating on a project, tutoring someone, or even playing WoW. Conversely, I don't like girls for what they would put in an online profile, but for the way the act in person.

So the elephant in the room, I think, is that dating isn't really a problem that needs solving via a web app. You can meet significant others in bars, art and yoga classes, the gym, book clubs or Bible groups, summer or weekend classes at a local college, study groups or tutoring, AA seminars, group therapy or AA seminars, in galleries, concerts, parks, parades, political action groups, conferences about hypnosis, or video games, or comics, or programming languages, or role playing, and on, and on, and on. Dating your coworkers might be risqué (although it hardly stops people), but dating your coworker's friends is quite all right. And guess what: your coworker's friends have friends, too. As long as you do things which involve meeting new people, you'll probably run into people you like enough to date.

Hell, I know a lot more couples who met playing WoW than I do who met using dating websites. What's the point of isolating and controlling the meeting of mates, when it's such a natural byproduct of being social? Yes, for most people, I think WoW counts as being a social activity.

<comment><USER3> It'd be hard for me to disagree with your conclusions more.

 _No girl I've dated would have given my profile on a dating site a second look. You can't communicate over a profile what you can collaborating on a project, tutoring someone, or even playing WoW._

I think a helpful way to think about online dating sites is as just another class of venue, like a bar or whatever. You wouldn't expect to completely know someone immediately after meeting them at a bar; rather, you're using a quick first impression to decide if you want to get to know them more. After your first date, it doesn't matter much where you happened to meet.

Just as some people don't come across well in bars, others don't come across well in profiles. Sure you can argue that the "in person" impression is worth more, but that's actually a bit dubious. An online profile lets some types of people quickly demonstrate intelligence and personality in a way that some other venues don't necessarily allow.

 _So the elephant in the room, I think, is that dating isn't really a problem that needs solving via a web app._

Describing "dating" as a problem to be solved is akin to describing "graph theory" or "linear algebra" as a problem to be solved; you're being overbroad. There's the "life partner problem," the "I want to get laid tonight problem," the "summer fling problem," etc. I think the problem online dating solves best is the "introduction problem" — how to efficiently meet people with whom you share a baseline romantic interest.

 _You can meet significant others in bars, art and yoga classes, the gym, ... on, and on, and on. .... As long as you do things which involve meeting new people, you'll probably run into people you like enough to date._

While I agree with this, I disagree with the conclusion that these venues obviate the need for online dating. What happens if you live in a very small town? What if you don't have time to go to bars, seminars, and yoga? What if you're shy? Online dating levels the playing field for people who are affected by questions like those.

 _Hell, I know a lot more couples who met playing WoW than I do who met using dating websites._

Dare I say, you are an outlier.

 _What's the point of isolating and controlling the meeting of mates, when it's such a natural byproduct of being social?_

Maybe because it's more efficient? What does "being social" mean in this context, anyway? And why is going to a yoga class to meet a mate intrinsically superior to using an online dating site?

The girl I'm dating right now actually lived down the street from me for a while, but because I don't work with her, go to her gym, or take Irish class, I'd have been unlikely to have met her and gotten to know her without online dating. Go figure.

Again, dating sites are just venues where you can meet people. It seems to be more isolating and controlling to try to eliminate or deride them: why should there be one less type of venue where people can meet potential dates?

I think there are many people out there who could really benefit from online dating but demur from it because of the kind of thinking in the parent comment.</comment></comment>


UC Berkeley profs lambast new "black box" network monitoring hardware - <AUTHOR> http://arstechnica.com/tech-policy/2016/02/profs-protest-invasive-cybersecurity-measures-at-university-of-california-campuses/ <comment><USER2> An interesting statement from the UC President, former head of the Department of Homeland Security: [1]

> "While we have absolutely no interest in the content of any individual's > emails or browsing history, we must accept that active network monitoring is > a critical element of a sound cyber-security infrastructure and the > interconnections of the University and all of its locations requires that > such monitoring be coordinated centrally."

Do you guys agree?

[1] [https://www.documentcloud.org/documents/2702981-Chancellors-...](https://www.documentcloud.org/documents/2702981-Chancellors- Cybersecurity-Measures-020116.html)

<comment><USER3> The security industry has largely given up on prevention as a means of stopping breaches, the current trend is very much based on fast detection & response.

Neither the NSA's nor these systems have the capacity to store full-take data, hell even just netflow data can be a challenge to store for any extended period of time.

The only thing that can really be done is streaming monitoring.

To the people wondering why decryption is necessary: HTTPS is ubiquitous and ip/port info is not actually enough to figure out where the communications are going, SNI helps quite a bit, but it may not be enough e.g. if a bad guy decided to use Twitter or AppEngine/Spot or an S3 bucket for C&C.

In a corporate environment your options are usually either network or host agent based, and frankly the network approach is significantly less intrusive, but also less effective.

<comment><USER4> According to an earlier article [0] about this, there's enough storage to keep 30 days of network traffic. That's not nothing. It's also something that apparently the regular UC IT folks have no control over whatsoever.

0: [http://utotherescue.blogspot.com/2016/01/ucop-ordered- spywar...](http://utotherescue.blogspot.com/2016/01/ucop-ordered-spyware- installed-on-uc.html) 1: [https://news.ycombinator.com/item?id=11006915](https://news.ycombinator.com/item?id=11006915)

<comment><USER5> That's strange. My company uses the same Fidelis XPS appliances Berkeley is using, and they're entirely installed, administered, managed, configured, and monitored by our internal IT security staff. Only our staff has access to alerts it fires and the snippets of traffic it captures (for example, if it detects potential malware C&C beaconing, it'll show the bytes it flagged as matching the signature, and some ~200 bytes before and after it). We're also able to view, change, or add all the rules it uses. The source code is closed, so that part is a blackbox, but it seems like a huge stretch to call the entire appliance a blackbox considering we're 100% responsible for integrating, managing, and utilizing it.

I imagine Fidelis probably also offers a professional services option that allows them to manage setup and maybe even remote monitoring. If this is true, there's absolutely no reason why Berkeley can't hire competent infosec folks to handle it all internally, especially considering they have a lot of smart students in the field.

<comment><USER4> My understanding of the situation (which I'm not involved with since I'm no longer Berkeley faculty, but I follow because I was in the past) is that the office of the president (UC-wide, not just UCB) ordered the systems installed and specifically out of the control (and over the objections) of UCB IT services.

<comment><USER5> I see. That certainly makes it more interesting. In that case, all of the criticism should be directed at him, and not at Fidelis or their appliances.

<comment><USER6> *Her

[http://www.ucop.edu/president/index.html](http://www.ucop.edu/president/index.html)

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I can't believe checking for malware signature, which can be done much more easily from the browser (and is already done, indirectly and efficiently by chrome for instance), justifies MITMing everyone at great expense.

In any case, signature check is not going to be useful in any scenario of targeted attack that I can imagine.

I can easily believe, though, that some BOFH is more than happy to retrieve the amount of logs he has in the good old days of plain http.

<comment><USER8> This is how _all_ network security appliances work.

All IDS or IPS appliances do this. Running something open source like Snort or Suricata? It's "MitMing" you, too. (More accurately "Man-on-the-Side'ing" for most installations, since they're typically IDS and not IPS, but I'm just using the same alarmist term you did to make my point.)

All "smart firewalls" (sometimes dubbed "nextgen firewalls" by marketing departments) do this. If your network uses firewalls from Palo Alto, that firewall is doing nearly the exact same things as this Fidelis appliance. Either most of the same features, or all of the same if you pay a little extra.

All proxies do this, except only for 80/443.

All host IDS agents do this as well.

>(and is already done, indirectly and efficiently by chrome for instance)

Chrome isn't going to detect your machine beaconing out via malware that's already installed. Chrome just has lists of bad URLs and URL paths. Chrome's security features certainly provide another useful layer of protection, but is not nearly sufficient as a malware or intrusion detection system by itself.

This article is FUD, in my opinion, for singling out just this specific appliance as if it's somehow more invasive than all the other gear on a typical large network. If you want to make an article about how packet inspection is bad in general, go ahead, but I think that war has been lost. If you're using someone else's network and computers, I don't think you should have a problem with a device checking the packets your computer sends and receives to see if they match specific regex or byte patterns.

It's true that a proprietary appliance is going to be a bit more blackbox with exactly how it processes traffic, compared to an open source solution, but often the signature lists themselves are accessible and configurable by the customer. Sometimes the actual signature content is visible as well.

Systems like these are absolutely necessary to help prevent breaches, as long as there are competent internal employees who can make full use of them. Perhaps an open source system will be a little bit better privacy-wise, on the off chance the proprietary solution you're using is secretly doing something malicious or sending sensitive traffic elsewhere on the Internet, though if it were, the scandal would likely greatly harm or ruin the company.

<comment><USER9> For bureaucrats in their cubicles, yes, this is normal corporate network management. You have no expectation of privacy at work; if you want that, go home.

As a student, though, the university is also your home ISP. And the public WiFi at the coffee shops, libraries, etc. In this context, reading your users' email is _way_ less okay.

Don't think of UCB IT as the BigCo IT department, but as Comcast.

<comment><USER8> True. I'd be less comfortable about this just as a university student trying to use the Internet. I think it's fine for employees of UCB, though.

</comment></comment></comment></comment><comment><USER10> I don't know if it's of any interest, but the title is unclear to me (Italian, self-proclaimed almost perfect English, working for US companies for 8 years, in the US since 4, previously in Singapore for 2.5 years).

I didn't know what "profs lambast" meant, until I googled it:

Lambast = criticize someone harshly

profs = it means UC Berkeley "profs", or professors.

(I erroneously thought that "UC Berkeley" was subject, "profs" verb, and lambast an adjective).

Strange that despite all these years, sometimes you stumble on some unknown English terms that you have to look up.

<comment><USER11> Man, I'm 37, have lived in the US for 37 years plus 9 months if you believe life starts at conception, and have a better command of the English language than many if not most, and I constantly have to look things up! I don't know if it means I'm actually not in any better command of the language than most 5th graders, or the things I read are written at a high level, or I just read enough to stumble upon new words, idioms, and phrases constantly, but whichever it is, I feel you :)

Of course when English has over 1,000,000 recognized words, who _can_ be expected to know all of them?

</comment></comment><comment><USER2> How does the "Fidelis SSL Inspector" work from page 10 of Professor Ligon's slides? [1]

The man-in-the-middle server 'identifies and decrypts all SSL/TLS encrypted traffic'? So long as an 'endpoint-trusted CA certificate' has been installed?

Does this really break SSL on all traffic that is diverted to the device, or does one of the endpoints need to have some 'registration' on it to permit this?

[1] [https://www.documentcloud.org/documents/2703887-Ucop- Monitor...](https://www.documentcloud.org/documents/2703887-Ucop- Monitoring.html)

<comment><USER12> In this case "endpoint-trusted" mean that it's a CA that is trusted by the client on the local network. What happens is that the box intercepts all traffic and establishes it's own TLS session with the remote server while establishing a different session under it's own CA with the client. Then any traffic sent by the client is decrypted, analyzed, and re-encrypted under the real server's session. (And the reverse for traffic coming back.)

<comment><USER2> Is there any way to know what CA is being used by the man-in-the-middler, and then revoke its trust on local machines?

<comment><USER12> Sure, your browser would tell you who the CA is. In this case it'd tell you that it's a Fidelis cert. And if you have the permissions on your system you could revoke the cert, but I'd be shocked if this system set encrypted traffic, that it couldn't inspect, pass. Your connection would probably just timeout or get some random error about your connection being refused.

<comment><USER13> It wouldn't be a Fidelis cert, it would be a cert signed by whatever CA is installed on the SSL terminator. What would happen if you locally revoked trust of the CA in question is you would get warnings that the connection is unsafe as you would with any other TLS error, e.g. hostname mismatch, untrusted cert, etc. Depending on the client behaviour you may be able to continue with the connection.

</comment></comment></comment></comment></comment><comment><USER14> Seems like overkill for a government entity to scan all packets entering or leaving the network as a whole. Definitely not minimally intrusive.

It seems likely that the computers with information they really need to protect are already on separate subnets/vlans, so why not protect just those instead of sweeping up everything?

</comment><comment><USER15> Well a very simple way to poke a hole in this would be to download the image (where ever it may be?) they use and see if any licenses are being violated as it seems to be based on Linux (as of 2012 [https://www.niap- ccevs.org/st/st_vid10449-st.pdf](https://www.niap- ccevs.org/st/st_vid10449-st.pdf) find "linux").

</comment><comment><USER16> The title of the article wasn't very worrying to me, so I read the whole article, and I was trying to figure what in this article is actually a cause for concern. I actually didnt find any "significant" cause of concern.

I have worked in the area of computer networking for many years. My guess is, one of the things the black box product is doing is typically looking for TCP or IP traffic patterns(packet flow patterns) that indicate say command control type of malware, or other malwares, that don't have much resemblance to packet flow signature of user browsing activity.

Also, this blackbox won't be able to decode HTTPs anyway. So may not be a privacy concern for most people?

<comment><USER17> My understanding is that it can decode all HTTPS traffic because it acts as a Man-in-the-Middle. Traffic from the client to the Fidelis device is encrypted with a Fidelis certificate. Its decrypted at the device, encrypted again with the actual certificate and sent to the destination. If it couldn't do this, I think it would be impossible to distinguish benign traffic from malicious traffic.

</comment></comment><comment><USER18> "Bad actors" is when you want to say "bad guys" but also sound formal and respectible, yes?

<comment><USER19> you're not wrong :D

</comment></comment><comment><USER20> Transparent monitoring for your protection

In keeping with this spirit, here is a reminder of how we monitor (your) CERN activities. We monitor all network Traffic coming into and going out of CERN.

Our new analysis infrastructure will be able to cope with the automatic live analysis of about one terabyte of data every day. All this data is stored for one year.

<comment><USER21> You quoted from [http://cds.cern.ch/journal/CERNBulletin/2016/05/News%20Artic...](http://cds.cern.ch/journal/CERNBulletin/2016/05/News%20Articles/2126902)

This does seem more reasonable — probing devices on their network for running services, counting unusual numbers of connections, etc. Are they MITMing SSL traffic?

As far as I know, CERN isn't a "home ISP" to anyone, unlike many universities.

<comment><USER20> [https://en.wikipedia.org/wiki/Tempora](https://en.wikipedia.org/wiki/Tempora)

</comment></comment></comment><comment><USER22> Sounds really expensive. I wonder if they have MFA and other measures in place already.</comment>


Russians Withdrew $13.6B in Cash from ATMs - <AUTHOR> https://www.newsweek.com/russians-hoarded-cash-amid-coronavirus-pandemic-1498788 <comment><USER2> They have had other nineties than most of us.</comment>


Aggregated reviews for iPad Pro 9.7 inch - <AUTHOR> https://feedcheck.co/blog/ipad-pro-9-7-inch-customer-reviews/ <comment><AUTHOR> Any suggestion is useful

<comment><USER2> To me, the problem with reviews isn't so much seeing them all in one place. The problem is one of trust. While the Ipad is a product that is likely to attract a lot of legitimate high reviews, there are many products with high aggregate reviews where the reviews are bogus.

This makes me think that an analysis of of the reviews which assessed the statistical likelihood of their legitimacy might solve a real problem for people. Otherwise aggregating sock pupetted reviews doesn't provide people with better information.

Good luck.</comment></comment>


Ask HN: Why doesn't Google Adwords show real-time stats, while Facebook does? - <AUTHOR>

Google Adwords statistics on the number of ads displayed and clicked is updated only every 24 hours, while Facebook ad statistics seems to be updated in real-time. Why? <comment><USER2> Google Adwords has been around long before realtime dashboards were commonplace for those type of systems</comment>


Ask HN: Public Social Media APIs with geolocation data - <AUTHOR>

I'm working on an MVP which displays geolocated data from social sites on a map. So far I'm importing json data from the following sites:<p>- Instagram - Twitter<p>I'm looking for more APIs that I can use to get data for my app. The data needs to be public. Does anyone know of any other popular sites with publicly available geolocated data? <comment><USER2> Have you looked at Ban.jo? (<http://www.ban.jo>) <\-- sounds pretty similar, you might get some interesting insights from checking out their app if you don't know about it already.

<comment><AUTHOR> I hadn't heard of Ban.jo. Looks great. Thank you!

</comment></comment><comment><USER3> You might look at Flickr as well: <http://www.flickr.com/services/api/>

And I don't know whether the Google+ API supports geolocation yet, but I expect it will soon if it does not.

</comment><comment><USER4> This might be of interest: <http://wikilocation.org/>

<comment><AUTHOR> Great! Thank you.</comment></comment>


Hacking the Samsung NX300 "Smart" Camera - <AUTHOR> http://op-co.de/blog/posts/hacking_the_nx300/ <comment><USER2> Jesus. How do engineers get away with this sort of thing? Why is there such resistance among hardware companies to a philosophy along the lines of "let's develop some simple, no-nonsense, standards-compliant firmware with a straightforward user interface"? Like every single router configuration page - godawful.

There's a hardware platform I've been keen to implement for some time, and to some extent I keep putting it off when I think about how challenging security and a good UX would be. Apparently the bar is lower than I thought.

<comment><USER3> People don't care how the sausage is made.

<comment><USER4> That is until some expert comes and informs them that it is actually made 90% pork 10% rat.

<comment><USER5> And soylent green is ... nevermind the taste is amazing

</comment></comment></comment></comment><comment><USER6> FYI, the request to [http://gld.samsungosp.com](http://gld.samsungosp.com) is probably to attempt to detect wireless networks which require login.

iOS does something similar - [http://blog.erratasec.com/2010/09/apples-secret- wispr-reques...](http://blog.erratasec.com/2010/09/apples-secret-wispr- request.html)

<comment><USER7> I understand the accept-language based on the company that created the device, but why would the accept reference shockwave and excel documents? That seems a little odd and not a simple library default.

</comment></comment><comment><USER8> The security flaws are bad, like not write locking the tag.

Still, lots of fun stuff for a developer user there, though. It runs a full X server, so technically some Linux people might consider it even more capable than Android.

Supporting a shared amongst manufacturers format like DLNA is cool too. Maybe a different brand smartphone could work with it more easily then, for example.

<comment><USER9> Plug in a few things and you'd be able to make a phone call from your camera and have it run Breakout or something

</comment></comment><comment><USER10> If you're interested in more camera hacking, here is a very interesting talk from last years black hat about hacking security cameras.

Title: Black Hat USA 2013 - Exploiting Network Surveillance Cameras Like a Hollywood Hacker [https://www.youtube.com/watch?v=LaI0xjeefpg](https://www.youtube.com/watch?v=LaI0xjeefpg)

</comment><comment><USER11> I bought this camera several months ago and I just want to chime in and say it's takes some AMAZING pictures. For all of the complaints about how bad Samsung's software is, its UI is a lot more intuitive than what I've come to expect from most cameras. The vulnerabilities they mention seem akin to what you get from connecting most printers to your network.

<comment><AUTHOR> My goal was not to criticize their UX (which I do nevertheless, triggering "advanced" features like HDR takes some amount of clicking), but to point out things that still need to be improved. Modern interconnected devices need to adhere to a new security standard, or they will be turned into bugs against their owners.

</comment></comment><comment><USER12> I'm shocked, _shocked_ that there is shitty software running in this Samsung establishment. When I saw the title, I had a strong suspicion that it wasn't about making the camera do cool things, but the subject would be "how broken is Samsung's firmware?"

What is it with Samsung and software? I mean, they can crank out some decent hardware, but their software is consistently abysmal. I have a Note 3. Ignore the plasticy and cheesy (fake leather stitching? Really?) exterior, and it's a decent piece of kit. But the included software is consistently crap. I bought the Note for the stylus, but both S Note and Action Memo apps that are to be used with the stylus consistently lost data. I think they fixed it in a later update (haven't lost data lately), but it doesn't inspire confidence.

The prime example is Samsung's new Gear Fit. It just plain doesn't work as advertised, and it's due to unbelievably broken software. The only things that work reliably are the notifications and the pedometer. And though the pedometer works (if a bit inaccurately) the data reporting is broken. I mean so broken that if you want a historical listing of your steps each day, you'll have to write it down because the data reporting is grossly inaccurate. Everything else, including most exercise functionality, just doesn't work. I thought it would be fun (and please pardon the shameless plug) to see if I can post a new bug every day: [http://gearfitbugs.tumblr.com](http://gearfitbugs.tumblr.com) (been slacking the last few days for lack of time).

Point is, how do they stay in business? Who buys one Samsung product and then turns around later to buy another one (okay, me, I guess)? For me, they don't get three strikes. Two hardware products with amateur-level software (with apologies to all amateur developers out there; your stuff is likely better than Samsung's) are the only chances Samsung will get with me. And if they think I'm letting one of their Internet-connected TVs (with mic and camera) in my house, they're delusional.

The Gear Fit brought to mind another question that I'll likely never get an answer to: how does this happen? Fine, you made some really bad dev hires. But don't you have a test team? Does the test team suck, or are they just ignored? What about project management? When the test team comes back and says, "the cycling function doesn't work. It will never record a whole workout without stopping mid-way.", does PM just say "ship it anyway"? Come ship date, you just take whatever is sitting at HEAD no matter what shape it's in, build it and call it the RTM build? I would seriously pay a week's wages to spend a week with their product team to get a look from the inside on how not to build software.

<comment><USER13> > I'm shocked, shocked that there is shitty software running in this Samsung > establishment.

haha. As someone with some knowledge of Korea, I can add a few pointers. Of course it should NOT be used to paint a broad black/white picture of S Korea or even the state of IT companies in S Korea, but let me try. Please note this is just a personal view.

First, Samsung and other S Korean companies know their weakness is software. They started providing more funding for software majors and Samsung even started a program where they will sponsor (pay salary, provide office space) high school graduates (but not in college yet) to study coding and put out projects over a period of a years (?) all in order to have more more talent get into software.

So WHY this seemingly lack of talent/interest in software building in S Korea's mega corporations? Surely with companies such as Hyundai Motors and Hyundai Shipyards and Samsung memory chips, it shouldn't be that hard to find good software engineers and coders?

I was told one reason is software piracy. It's gotten much better but in the past software piracy was a big issue in SK. I've used/seen many softwares in the past but the only one that ever required a physical dongle for licensing was a Korean Word processor. I had to support it a bit many many years ago. That was the only one with physical dongle for licensing that I've come across. Why the piracy? Well because people didn't have money (or thought didn't have enough money to spend on some intangible thing that requires a fee based upgrade in just a 1 or so). There's a reason linux/opensource is strong in some countries. Some just don't have the money to spend on software.

So due to piracy, a generation of students came to think that software was not a secure career path. Why get into a career to work to build something that can be easily copied at little cost?

Another reason I see is English. Again, it's gotten better with the obscene amount of money the nation as a whole spends on learning English and now other languages. But learning English for S Koreans used to be pretty intimidating. Sure source code is nonsensical alphabets to even native English speakers. Imagine someone learning English for first time starting in middle school with a dozen other subjets to learn. No wonder it was hard to find decent English speaker/writer in S Korea for decades. If you were decent at English, you had other far more prestigous/lucrative career path for you.

One possible reason that the seemingly big/stable corporations in S Korea don't seem to attract good coders is requirement for degree from top school. Getting into good college in S Korea is hard enough. Well, getting into one of the big corporations like Hyundai/Samsung is even more competitive. And we all know the really outstanding programmer/coder/startupers usually didn't have a degree when they started out in programming/IT. Like Jobs, Gates, etc.

That's my 2 cents.

<comment><AUTHOR> _So due to piracy, a generation of students came to think that software was not a secure career path. Why get into a career to work to build something that can be easily copied at little cost?_

Wow, this is really interesting - in Russia, piracy was as prevalent, but my gut feeling is that Russian software is far superior to their hardware.

<comment><USER14> I think that's a function of their strong focus on mathematics and engineering education during the Soviet era (and then CS departments grew as an offshoot of that, I bet).

</comment></comment></comment></comment><comment><USER15> I don't know... I kind of like it that it is as hackable as it is. Worst thing imho is the permanent write-lock problem and that it should be secured in a way that lets the user hack it but keep the baddies out.

</comment><comment><USER16> I don't think a digital camera needs to be running a pretty full-featured Linux distro with X11 and all, nor phone home with your location, nor have several hundred MB of firmware. These "smart" devices are way too smart for their own good.</comment>


Wavii Launches Public Beta, Aims To Be The Big Data News Aggregator Of Choice - <AUTHOR> http://techcrunch.com/2012/04/10/wavii-launches-in-public-beta-aiming-to-be-the-big-data-news-aggregator-of-choice/

<comment><USER2> Big Data is just that... BIG.

I personally feel that the area most ripe for innovation in this space is the opposite of some sort of Googlebook.

Make a product that actually _removes_ that intimidating aspect of Big Data and looks more like something your mom would use everyday... Do that and I believe you'd have a true next generation data product.

Everything I hear about Big Data is about clever people making it seem even bigger and waxing lyrical on the possible benefits to Big Business. What they mean is advertising. It's getting boring.

Let me not rant and just toss a pebble in the pond: Big Data for The Little People.

</comment><comment><USER3> From what I could see, it has mandatory Facebook authentication. Is that really necessary?

</comment><comment><USER4> Could be cool. I can't manually input my own topics, which is very frustrating.

<comment><AUTHOR> Have you tried typing in the search box?</comment></comment>


Ask PG: When will YC W13 Applications Open? - <AUTHOR>

..and what will the deadline be?
IIRC, the application had already been open for a few weeks by this point in 2011. http://ycombinator.com/apply.html <comment><USER2> In a day or two.

</comment><comment><USER3> I'm also really interested in the info</comment>


Why home 3D printing never lived up to the hype - <AUTHOR> http://www.vox.com/2016/6/6/11693388/makerbot-home-3d-printers <comment><USER2> Ugh, it's kind of painful to read an article that looks like it was literally copied out of a magazine a few decades ago and just had the subject changed.

3D printers are going through the technology hype cycle, just like other things such as 2D printers, computers, cars, etc. [https://en.wikipedia.org/wiki/Hype_cycle](https://en.wikipedia.org/wiki/Hype_cycle)

It passed the peak, where everyone's imagination runs away with them, and it's headed into the trough. So, plotting it against the curve by eye, I'd say in about 6 years we should be hitting the plateau.</comment>


Chinese hiding three million babies a year  - <AUTHOR> http://www.telegraph.co.uk/news/worldnews/asia/china/7787661/Chinese-hiding-three-million-babies-a-year.html

<comment><USER2> The same publication has an article on how the restrictions on family size are being eased in places like Shanghai because of problems with demographics (eventually there's going to be an imbalance of young to old people) [http://www.telegraph.co.uk/news/worldnews/asia/china/5901573...](http://www.telegraph.co.uk/news/worldnews/asia/china/5901573/China- begins-lifting-strict-one-child-policy.html)</comment>


My $4.5B Gift to Twitter - <AUTHOR> https://medium.com/@darrenrovell/my-3-5-billion-gift-to-twitter-f6982b735fe6 <comment><USER2> clickbait.

</comment><comment><USER3> Darren Rovell can't shill for brands if twitter doesn't exist!

Rather than retweet people, he does a lot of "steal pic, 'credit via /cc'" essentially stealing a ton of exposure for other smaller twitter users. How many people click on an @ to see who recorded a video clip rather than just click the RT button.

Says there can't be racism in sponsorships (in reference to Serena Williams not getting sponsorship) because there are black athletes that get big $ deals, therefore no racism can exist!

Says college players don't deserve to get paid, no one even knows who they are! (Except you know people from that school, rival, and obviously excluding the superstar college players who are probably losing the most)

Tweets constantly about the food he eats at sports events which would be fine if he hadn't written some stupid article 5 years ago chiding "foodies that tweet 10 sports tweets"

<comment><USER4> Just to let you know, there are some people who actually _hate_ retweets. I would prefer that someone I follow would tweet only in their own voice even if they're resharing what someone else shared. As you said, he signs his retweets with "credit via". I mean what more do you want him to do? In my experience the most annoying thing on Twitter is just because I'm following Marc Andreesen I have to consume all the random tweets he retweets from his friends/colleagues/interns/acquaintances/some random guy he met online.

<comment><USER3> uhm, you can retweet someone while also writing your own comment thus giving your own take and giving people their credit's due!

literally that is what i want him to do. that is what "more" he can do. literally give people credit for what they tweet about.

also you are probably the only person who "hates" retweets. i don't even get what that means.

<comment><USER4> You're taking this tweeting thing too seriously. It's not like someone wrote a nobel prize winning discovery on Twitter and someone else stole it to publish on Nature and took the credit. That aside, based on all the downvotes I received I guess I'll get downvoted again for this but just gotta say this. I didn't say you were wrong. I said there are other people who feel this way and was just sharing another point of view. And you are the one who's refusing to accept there can be other perspectives.

</comment></comment></comment></comment><comment><USER5> I'll just save you the trouble of reading this:

The author ran a Twitter poll asking people how much they would pay for Twitter. 64% said "nothing." The author believes people have a tendency to vote "more negatively" to make a statement, and a lot more people would actually pay than are represented in the poll. Laughable.

If anything, people _love_ to say they're willing to pay (it's just a click). But when the time comes to _actually_ pay money... they're nowhere to be found.

</comment><comment><USER6> Ignoring the fact that he's choosing to fund a proprietary platform, he should make it clear that all his poll showed was that "36 percent of people [who follow him and responded to his poll]" are happy to pay.

</comment><comment><AUTHOR> > _For $1 a month & $12 a year, you get to prioritize your Twitter feed. You > can have one timeline in chronological order and another one in order of > your priorities, by topic and by follow. You also get a mobile version of > Tweetdeck, which doesn't currently exist, but is an essential for a power > user._

So...I might have missed it, but has there ever been a good explanation for why Twitter has so bewilderingly neglected Lists? I recently saw on Facebook a little balloon pop up to tell me that if I wanted to, I could make friends lists, and here was the menu to go to do so... _Facebook_ , a site that has pretty much mastered the ability to prioritize your friends (not just Close Friends, but favorite friends in a given locale), still thinks users might like curating their own lists.

But Twitter...The only way I see to even _accessing_ my lists is to go to my profile, where there are 4 buttons at the top: the settings-gears, a button that takes me to Twitter Ads, another button that let's me switch accounts as if more than one person were using my iPhone, and then "Edit Profile". The lists are currently buried in the Settings button, and even then I have to stumble around to find the lists that I've carefully curated.

The biggest complaint I hear from new users is that it's hard to cut through all the noise. So they limit who they follow...because in every other social network, there's a distinct FOMO when your newsfeed is being crowded out. Being able to easily generate lists and switch between them would've encouraged them to follow more people and thus broaden the network. The most common advice given among journalists about Twitter is to join Tweetdeck, because of how powerfully it lets you monitor a variety of subjects.

Making lists usable -- and hell, sharable, like Spotify has made playlists -- is not a technical or a product challenge in the way that Moments or an algorithmic timeline is. I'm not saying it's trivial to fit List- making/following functionality into the interface but it doesn't even seem like Twitter gave a shit.

<comment><USER5> I don't have any inside data, but I'm suspect Facebook's usage numbers for lists are quite low. Anecdotally, I'm the only person out of all my friends that uses friend lists for anything (mostly to tailor privacy settings). Most people are unaware they exist.

Secondly, Facebook auto-populates lists based on clusters of friends (e.g. a bunch of friends are in your current city, so Facebook might create an automatic list for that). Twitter can't do this bootstrapping, for obvious reasons (and if they tried I wouldn't be surprised if the clustering was poor quality).

Also, at the end of the day, it doesn't matter how many ways to slice and dice your friends there are. Nothing will change the fact that Twitter is crap if 1) nobody knows who you are (you're just tweeting to an empty room), and 2) you haven't spent the time to follow the right people.

One will note that Facebook puts everything into one algorithmic news feed.

</comment></comment><comment> brian-armstrong [https://news.ycombinator.com/item?id=4395665](https://news.ycombinator.com/item?id=4395665)

</comment><comment><USER7> I think the poster underestimates the costs involved in creating some of those product features, but it's not a bad idea and it's kind of shocking Twitter hasn't released a pro version over the years.

It's a shame top management spent so much energy fighting each other instead.

</comment><comment><USER8> Donate your money to the Gnu Social project instead.

</comment><comment><USER9> celebrities already pay for twitter

</comment><comment><USER10> Ben Thompson to the white courtesy phone. Ben Thompson.

</comment><comment><USER11> $3.5</comment>


Experts, True Believers and Test-Driven Development: how advice becomes a religion - <AUTHOR> https://codewithoutrules.com/2016/12/15/experts-vs-zealots/ <comment><USER2> You can replace TDD with object orientation, functional programming, scrum and other buzzwords. I never understood why people try to make everything into a rigid religion. Maybe it's a substitute for thinking for themselves?

<comment><USER3> Saw a perfect example of this on stackoverflow (or stackexchange I forget which).

But someone posted some actual code, it had a switch statement, only 3 case options, about 7 lines and if the switch didn't hit, throw exception after

"I would be careful with that switch, it looks like a code smell, this is how I would do it: 2+ interfaces, 3+ classes, abstract this, factory that and over 100 lines of code.

I just refuse to believe a simple switch that everyone can understand in about 1 second is not the better solution to some complex code, even if it does use a "pattern"

<comment><USER4> Without having seen this specific SO thread, I can easily imagine both 1. agreeing that the 7-line switch-based code is the better solution to a little SO-question-sized problem, and 2. finding that same solution with no abstraction inflexible and "smelly" in a huge codebase very actively developed by tons of people. Context matters, and knowing what the context is currently and predicting what it will be in the future are some of the tough things about programming.

<comment><USER5> This. If it's a small program with limited scope, switches are fine. If it's part of a much larger program, there's a chance that switch will explode to switching on the same thing all over the codebase.

However, I think GP's point is valid. If during a code review I have a switch and it makes no sense to abstract it, I'd smack the reviewer on the head if he/she wants me to "fix" it.

</comment></comment></comment></comment><comment><USER6> > And if the director of a movie has asked you write some code to 3D render a > "really awesome-looking explosion" you won't benefit much from unit tests > either, unless you can write a unit test to determine awesomeness.

I was skeptical of this post to begin with but this line sums it up for me. The author is railing against a perceived threat. Of course you can't unit test _awesome_. That's ridiculous.

So what's the claim here?

I think more developers need to be introduced to the concept of the, "state of the art," and be led to resources like SWEBOK[0]. It has a section on software testing and it's good to know what the state of the art is across the industry.

I don't have the link in my db, but I've come across studies that have shown no significant difference in productivity when utilizing test-first vs. test- after approaches to software development. That's the only real religious sell I still hear these days and it has been rather well debunked at this point. All that matters is that software is tested... how you approach it seems to just be a matter personal preference.

[0] [https://www.computer.org/web/swebok/v3](https://www.computer.org/web/swebok/v3)

<comment><USER7> The question is, how do those studies measure productivity?

In my case, I've found I write more readable, easier to understand code when I use tests to drive out my design. It may actually take more time to write the code itself, but the product ends up better, imo.

(Granted, I think I take the approach this article advocates and only do so when I can help inform the design.)

<comment><USER8> > In my case, I've found I write more readable, easier to understand code when > I use tests to drive out my design.

In my case, I've found the opposite—when I use tests to drive my design, I end up with lots of tiny moving parts; each one individually is understandable, but the design as a whole is not, and figuring out how to do anything different is an exercise in frustration. I end up jumping between 2 or 3 files, trying to figure out where anything _happens_ , because it's all been unit tested into perfect isolated pieces.

</comment></comment></comment><comment><USER9> It's like design patterns, scrum etc.. When the tool is used correctly it is awesome. When it's mis-used it becomes a cargo cult style liability.

With TDD a large part of the religion thing comes from people like Uncle Bob. It's not that his style is bad, but the biggest problem I've seen with his style is when people who are already passionate with their craft and maybe practicing TDD go crazy with his advice while missing the context of his message.

That context is his focus towards systematically sloppy corporate shops that have picked up really bad habits and won't touch the tool.....often the same ones that still use a waterfall development process (now with a thin scrum veneer). When you have these kinds of shops it is probably better to to a bit to the other extreme first, and to then find a happy medium after you develop better habits and understand the tool .

<comment><USER5> >With TDD a large part of the religion thing comes from people like Uncle Bob. It's not that his style is bad, but the biggest problem I've seen with his style is when people who are already passionate with their craft and maybe practicing TDD go crazy with his advice while missing the context of his message.

I honestly don't know what Bob should do. I know he occasionally says stuff that gets people upset. However, the _majority_ of the stuff that is attributed to him is just outright false. It doesn't matter how many times he publicly corrects the record.

Uncle Bob does not believe in unit testing every function.

Uncle Bob does not believe in a 1:1 mapping of function with unit test (or even close). Uncle Bob is fine if a unit test spans/covers multiple functions.

Uncle Bob is not against unit tests that touch the database or disk.

The list goes on and on.

I watched many of his Clean Coder videos, and was surprised to see how nuanced he is. He does not speak in absolutes. His blog posts are much less polished, and often get him into trouble. But even there I see a fair amount of nuance.

<comment><USER10> _He does not speak in absolutes._

Not as often as some of his critics might suggest, perhaps, but he really does speak in absolutes at times and some of those absolutes really are as foolish as his critics say.

He also frequently adopts a style that presents his personal opinions and experiences as if they were more than that, despite a lack of other evidence to support his positions or even the existence of other evidence that seems to undermine those positions. While he may hide a small disclaimer somewhere, many of his readers aren't going to see it, and I don't believe for a moment that he isn't fully aware of that when he chooses to present his material as he does.

</comment></comment></comment><comment><USER10> Sadly, I don't think all of the black and white advocacy for certain ideas that we see from some sources in our industry is because the experts don't realise how expert they are. I think much of it is because it sells more books and consulting gigs, and because being controversial helps to keep a high profile.

</comment><comment><USER11> I'm 17 years into coding and have never even tried TDD - just because it seemed horribly wrong.

<comment><USER12> And this is the other end of the spectrum, which is equally as bad. Don't be the guy who never tries new things.

<comment><USER13> Is it equally bad?

I didn't do TDD most of my career, product I delivered worked, where delivered on time and reached the goals set out by the business. Why bother? Because it's good practice? Hardly a valid argument in a business perspective.

<comment><USER14> "Business perspective" can be like hill climbing: you evaluate a potential direction based on whether it makes your situation more profitable or less profitable, regardless of the peculiarities of your local landscape.

I think got into TDD for its aesthetic or philosophical appeal. The idea of being able to make reliable software by first writing down what its supposed to do just struck me a poetic and tractable. On the one hand, I spent a lot of time and money going through a dip in productivity while learning all the things to make testing work for me. On the other hand, I eventually emerged from that dip with skills and a mentality that allow me to be productive and relaxed in a way that I wouldn't have thought was possible.

</comment></comment></comment></comment><comment><USER15> By pg in On Lisp: >> It's a long-standing principle of programming style that the functional elements of a program should not be too large. If some component of a program grows beyond the stage where it's readily comprehensible, it becomes a mass of complexity which conceals errors as easily as a big city conceals fugitives. Such software will be hard to read, hard to test, and hard to debug. >>>

One of the problem is not treating tests also as a design problem as in what to test and what the code for tests should be like? I never see the rule of simplicity applied to the test code as well. Eventually it all becomes like a big city that conceal fugitive bugs.

EDIT: to end the quotation from pg book.

<comment><USER16> Fugitives can hide very well in the backcountry too.

And I'm not moving to a village. :)

</comment></comment><comment><USER17> I see a lot of projects where everything is just a vast context based decisions. If you factor out all of the things that are not related to databases or handling user input there's very little left.

However I can imagine having that logic built up "abstractly" by imagining user input and database output objects and fully tested is something that would really help a project.

Having only 20% code coverage or less is nothing to be ashamed of as long as that code is the code that matters and it's better, more abstract and more readable because you started writing it TDD. Before things got ugly with user input and database results.

</comment><comment><USER18> > You need to take every piece of advice and figure out when and where it does > not apply.

This. It is almost obvious. But you still see lots of cases where advice is followed where it doesn't make sense.

A particular contrarian thing that I do in Java. When I need objects that are pure Data Transfer Objects (DTOs) with no logic whatsoever inside I just declare all members public and do not bother writing (or generating) getters and setters. I know we were told NEVER to do this. But in this case there is not attempt to encapsulate anything as there is nothing to encapsulate.

<comment><USER19> Java really needs to get auto-properties added in someday...

</comment></comment><comment><USER20> It happens all the time. It happened with "design patterns". It happens with frameworks, languages, and many other things. Human nature. It's quite hard to argue with someone who cites an "expert", because you are a relative nobody.

Always think for yourself.

<comment><USER21> But where does "thinking for yourself" become "reinventing the wheel"?

<comment><USER22> It happens remarkably easily. But like every other mistake, this is one you frequently have to make for yourself to understand why it's a mistake.

The trick is having enough introspective capability to identify when you have made a mistake, and not fall back on dogma to say "I followed The Path, so it _can 't_ be a mistake".

</comment></comment></comment><comment><USER23> All methodology has the potential to become pseudo-religion.

The worst ones are the ones that infect every aspect of the business like ITIL. The scope and complexity of the methodology is so broad, you need to hire priests (ie. consultants) and build shrines (ServiceNow, Remedy, etc) to the religion and you end up in a state where nobody in the business understands WTF is going on.

That answers the question frequently asked here re: why horrific and dysfunctional companies like IBM get a tight grip on companies.

<comment><USER9> Six sigma is definitely that way, especially when you consider that, like AA, it is a 12 step program. On a side note if you put the two lists next to each other six sigma almost looks like a dispassionate generalized version of AA ...

</comment></comment><comment><USER24> This is so not new, it has been covered in religions for thousands of years. Buddhist teachings tell that there are three forms of understanding.

The first is devotional understanding. Martin Fowler is a wise and learned programmer and says that TDD is the best way, so One believes that.

The second is intellectual understanding. TDD is good because it codifies the programmer's intentions for what the code should do, makes refactoring easier, prevents regressions and all the other logical reasons that TDD proponents talk about.

The third kind, and the only one that's true understanding, is experiential understanding. TDD is good because you've experienced development with and without it and feel how different they are. Once you get to this point, there's no dogma about writing tests first or anything of that nature. The practice becomes natural and you're free to deviate when it feels wrong.

See also: Shu Ha Ri

<comment><AUTHOR> The interesting thing about this model is that it maps pretty directly to current research on learning.

In this context, experiential understanding (when you're an expert) is the point where you start suffering from Expert Blind Spot.

And there's a bunch of research that suggests the best teachers (by default) are the people at middle point, intellectual understanding, precisely because the understanding is less automatic and integrated.

The book "How Learning Works" (which I review at [https://codewithoutrules.com/2016/03/19/how-learning- works/](https://codewithoutrules.com/2016/03/19/how-learning-works/)) talks about this at length.

<comment><USER25> Interesting. For me, teaching when I'm an expert means I must begin another path of learning. I'm at Ri in understanding the material, but at Shu at understanding how novices see the material. But I could well believe people at the middle point will always be better than me.

For those who want a good example, I strongly recommend Julia Evans, aka @b04k:

[http://jvns.ca/](http://jvns.ca/)

She writes a lot of novice-focused material on technology. She does a much better job at explaining things than I would. And she does it with an excitement for the material that is infectious. Even for those who know the technical details, I recommend following her; I always walk away saying, "Wow, she's right! I had forgotten how cool that is!"

</comment></comment></comment><comment><USER26> Not specific to Code.

See Also

Health Advice Including but not limited to (Diets, GMO, Types of Exersize/Timings)

People want something to latch onto and feel superior about.

<comment><USER27> I think the difference with healthcare advice, at least with the examples you gave, is that the effects are directly measurable.

If I am eating 2000 calories a day now, and start eating 2500 calories a day, I can measure the impact of that change on my weight as well as my lifting performance.

I really doubt the impact of TDD is directly measurable like this. I may be wrong though.

<comment><USER5> >I think the difference with healthcare advice, at least with the examples you gave, is that the effects are directly measurable.

Nope.

"Oh, you have this problem? You probably don't take enough Vitamin D!"

"Oh, you have this problem? It's probably due to lack of exercise."

"Oh, you have this problem? You're probably not drinking enough water."

</comment></comment></comment><comment><USER28> My experience: TDD is _awesome_ for writing certain types of code... and it's terrible for writing other types of code. Simple as that. The same is true for many programming languages: good for somethings and terrible for others.

<comment><USER29> What is it terrible for? I've encountered situations where someone believed it was bad for something and were wrong. Such as user interface code. The solution in that case for example is to make as much of the code testable as possible leaving just a thin layer of untestable stuff (which can still be tested via an integration test of some sort). This idea generally follows the principles of [http://alistair.cockburn.us/Hexagonal+architecture](http://alistair.cockburn.us/Hexagonal+architecture) or "functional core, procedural IO". Gary Bernhardt expounds on this brilliantly in his [https://www.destroyallsoftware.com/talks/boundaries](https://www.destroyallsoftware.com/talks/boundaries) talk, btw.

</comment></comment><comment><USER30> Uh, I think every TDD "expert" makes it pretty clear, that there are cases where tests-first might not be the best option.

</comment><comment><USER31> I think a lot of this religious behavior stems from an underlying belief, mostly by people who've never tried it themselves, that programming _must be_ easy and anything that makes it appear hard (and especially slow) means that somebody is making a mistake somewhere. So they go looking for a silver bullet, and the latest fad seems to fit the bill.</comment>


Is a Hip Startup Name Important? - Andrew-Dufresne http://www.readwriteweb.com/start/2011/01/whats-in-a-name-is-a-hip-start.php

<comment><AUTHOR> This isn't an overly easy question - a domain name is an incredibly important part of any startups identity and there's a ton of factors you need to consider above and beyond the obvious SEO factor of having a product related site name.

For me personally, just as important as having a name that relates to what you do, is having a name that is pronounceable (and spellable) via verbal communication. Particularly over a phone line when giving out email addresses etc, when the sound quality may be less than perfect.

There's definitely a shrinking pool of .com names available, but there is still a huge number of names available. I'd be pretty hesitant to go for a domain name that didn't match the startup name.</comment>


Facebook's Growing Ad Exodus Means More Risks to Revenue Growth - <AUTHOR> https://www.bloomberg.com/news/articles/2020-06-28/facebook-s-widening-ad-exodus-means-more-risks-to-revenue-growth <comment><USER2> Prediction: ad buyers pulling out of Facebook is going to be the Lehmann Brother's moment of the coming economic recession/depression/collapse whatever you wish to call it.

Facebook is quite unique in that they are like the government. No one actually likes them, but you don't really have an alternative. But once this cascades on to the rest of the ad tech industry, it will trigger another round of economic collapse which will probably crash the entire big tech bubble.

<comment><USER3> Sorry to disappoint you but Facebook is here to stay. They are 20 years ahead of any wannabe competitor.

<comment><USER2> Are they also above the law? I have a feeling a few folks from Facebook are going to be sent to prison before the year ends.

[https://dailycaller.com/2020/06/23/project-veritas- facebook-...](https://dailycaller.com/2020/06/23/project-veritas-facebook- bias-cnn-don-lemon/)

This tweet from the former employee suggests that many FB employees already know this, but the money is keeping them there. Once ad revenue stops flowing, it would be interesting to see what happens next.

[https://twitter.com/sebmck/status/1275363680767537154](https://twitter.com/sebmck/status/1275363680767537154)

>>They are 20 years ahead of any wannabe competitor.

Sounds an awful lot like the phrase "smartest guys in the room". Unfortunately, it didn't save Enron, because they were also the slimiest people on the planet.

<comment><USER3> They are not above the law and nobody is going to prison. Your accusations have no merit. They achieved dominant market position through legal market competition. Their business practices can be controversial but they are learning every year. You know their CEO started Facebook in the college dorm room, you can't expect he will know everything and he will predict everything.

On the other hand Microsoft has a monopoly for 30 years straight and they as well sometimes have controversial business practices and nobody is in prison.</comment></comment></comment></comment>