HN user

tomstokes

1,203 karma

https://twitter.com/tomstokes

[ my public key: https://keybase.io/tomstokes; my proof: https://keybase.io/tomstokes/sigs/C2doyrJkOjym8Sp_KHxSG31MllIcdgmuXjCIucB3bBI ]

Posts18
Comments35
View on HN
www.gisaid.org 5y ago

Genomic Epidemiology of HCoV-19

tomstokes
11pts0
www.microsoft.com 6y ago

Creating ad hoc microphone arrays from personal devices (2019)

tomstokes
186pts53
www.acsh.org 6y ago

We Made One Gram Of Remdesivir

tomstokes
709pts229
www.microsoft.com 6y ago

Creating ad hoc microphone arrays from personal devices

tomstokes
4pts2
www.anandtech.com 7y ago

Intel Core I9-9990XE: Up to 5.0 GHz, Auction Only

tomstokes
100pts86
kaitai.io 7y ago

Kaitai Struct: A new way to develop parsers for binary structures

tomstokes
1pts0
www.adventur.es 8y ago

How to acquire your first small(er) company

tomstokes
2pts0
www.fastcompany.com 8y ago

Ed-Tech Unicorn Pluralsight Just Filed Confidentially for an IPO

tomstokes
2pts0
beta.techcrunch.com 8y ago

Former Docker CEO Ben Golub Joins Storj as Executive Chairman and Interim CEO

tomstokes
22pts3
rachsmith.com 8y ago

I haven't experienced imposter syndrome, and maybe you haven't either

tomstokes
33pts7
github.com 8y ago

A tool for passive data capture and reconnaissance of serial flash chips

tomstokes
2pts0
eprint.iacr.org 8y ago

Adversarial Optical Channel Exploits Against Lidars for Automotive Applications

tomstokes
2pts0
www.darknet.org.uk 9y ago

Crackle – Crack Bluetooth Smart Encryption (BLE)

tomstokes
3pts0
ramtin-amin.fr 9y ago

Secure ROM extraction on iPhone 6S

tomstokes
264pts46
www.contextis.com 9y ago

Reversing the string encryption in the Pangu 9.3 jailbreak

tomstokes
2pts0
eaton-works.com 9y ago

Reverse engineering and removing Pokémon GO’s certificate pinning

tomstokes
2pts0
www.sciencedaily.com 10y ago

Speed reading promises are too good to be true, scientists find

tomstokes
1pts0
h30499.www3.hp.com 12y ago

Double-Dip: Using the latest IE 0-day to get RCE and an ASLR Bypass

tomstokes
1pts0

Reverse-engineering the Pi 5's MIPI to push 5.6 Gbps from custom MASH sigma-delta ADCs to a Lattice ECP5 FPGA to the Raspberry Pi is serious engineering

Using video interfaces to transfer arbitrary data at high speeds is becoming a common trick for cheap boards with limited interfaces. Video inputs and outputs are generally highly mature and optimized to avoid dropping frames because everyone wants reliable video. Putting arbitrary data into video IO pipelines is a cheap way to get high speed IO through standard interfaces.

There is a cool project that uses cheap HDMI to USB capture devices for high speed data transfer out of cheap FPGA boards that have HDMI output [ https://github.com/steve-m/hsdaoh ]

In a perfect world, using PCIe directly would be a much better solution for a project like this. Having access to PCIe DMA support directly without relying on video IO peripherals is helpful for high speed ADC/DAC applications like this. It would also make the board more portable to other SBCs.

The ECP5-5G can do PCIe 2.0 x2 or PCIe 1.0 x4 which would provide around 8Gbps of data transfer. The problem is that the Raspberry Pi 5 only exposes a single PCIe lane to the user. The other 4 PCIe lanes of the Raspberry Pi 5 SoC are routed to the RP1 chip, which has the MIPI and CSI interfaces that are used in this project. So the data is going through a convoluted path instead of being connected to PCIe directly.

I would have to look at the details more closely, but even using the PCIe 2.0 x1 port (around 4 Gbps after overhead) on the Raspberry Pi would be close in bandwidth to the 5.6 Gbps number they give for their custom MIPI solution.

I think the Raspberry Pi 5 is a good first choice for most projects because it is widely support and has the largest community, but for a project like this the benefits of moving to a different SBC with PCIe 2.0 x2 would have been helpful. Keeping the project semi-independent of the SBC has a lot of benefits.

Cool project. Thanks for doing a write-up that includes so much detail.

I do a lot of PCB review for students and makers, so if you're interested I wrote up some notes. Consider this an incomplete review because I only had so much free time, but hopefully this information can be helpful for your next rev or next project.

Design:

- Add ESD protection to all pins exposed by connectors and around the buttons. A simple TVS will work. However, the capacitance of the TVS needs to be small enough to minimize burden on your higher speed lines like USB and VGA. I'd use a cheap TVS for the low speed pins and then maybe look at some dedicated USB-HS protection parts and then just re-use those on the VGA lines. The USB3300 part you're using looks to have some minimal built-in ESD protection but as you observed it's probably not enough for real world use.

- Consider a buffer between your resistor DAC and the output. This could be an op-amp or a dedicated buffer chip. This will let the resistor DAC operate without significant load, isolated from the cable. You can then put a 75 ohm resistor in series with the buffer output to get optimal impedance matching with the 75-ohm VGA cable and load. You can get away with resistors connected straight to the VGA cable for demo purposes, but having it properly buffered and impedance matched will clean up the edges even further.

- Look into the design of an R-2R DAC as an alternative to the weighted-summing configuration you've used. You would want 0.1% resistors at 8-bit depth but you'd only have to buy and manage 2 resistor values (R and 2R) which is helpful when doing hand assembly.

- Better yet: This project is a good place to use a real DAC chip. Resistor DACs are cool to play with and useful for ultra-cheap demo boards where manufacturing cost is a high priority (Like the RP2040 VGA demo) but for a hand-assembled project like this a good DAC chip is great choice. It would shrink your PCB, reduce assembly time, and allow you to choose a physically smaller MCU package because you don't need 24 IO pins for the resistors.

Schematic:

- When using hierarchical schematics it's a good practice to avoid putting ICs and components in the root sheet. I suggest adding additional sheets for the MCU and other parts, then connect the blocks in the root. Treat the root page like a block diagram.

- KiCAD's bus functionality could help reduce a lot of the pins going into your blocks, like USB_D[0:7] and VGA_R[0:7]

- Breaking up that big STM symbol into a couple parts would be a good way to learn how to use KiCAD's symbol editor and would allow everything to fit on standard A4 sheets

- Don't hesitate to add notes to the schematic that might be helpful during debugging, assembly, or for your future self when you return to the project.

- I like to do a cleanup pass on schematics to make sure all labels are readable and there's enough space to comfortably see everything. It's a good practice to get into and pays off when you're tired from a long debugging session and trying to read a schematic. I suggest using the empty space on some of your pages to space components out more so no text is overlapping or hard to read.

PCB:

- You used 0.15mm (5.9 mil) traces almost everywhere. It's best to avoid using small traces unless you have to. You want to stay away from the minimum trace/space of your PCB manufacturer by default and reserve those for only the places where you need it. It will improve yields and make rework easier. Many of your traces could be 0.25mm or 0.5mm without any problem.

- Likewise, avoid letting traces run too close to pads unless you really need to. It's okay when you need to squeeze a trace into a narrow spot, but by default you should try to give as much room between pads and traces and between adjacent traces as you can. The tighter the spacing, the easier it becomes to accidentally short something out during assembly.

- Similar story with vias: Try not to use the absolute smallest vias everywhere when you have space.

- A lot of your vias are grouped together in a way that creates large slots in your ground plane. This doesn't matter too much at the low speeds you're working with, but it's good practice to avoid creating large cutouts in ground planes. The return current has to flow somewhere and those big slots will force it to take a longer path, which increases emissions and distorts high speed signals.

Reverting to factory state seems riskier than last known good state.

Reverting to factory state is the last resort. You don't have users do it unless there is no other good state to return to on the device.

Just because that version worked a decade ago, it doesn’t mean it’s compatible with the world today.

That's why I said you have to include this in your test procedures.

When you're planning for the long term you can accommodate for these things on your servers.

will be booted automatically if all else fails

I prefer to keep the factory firmware reset to a manual process that requires user intervention.

For example, holding down the reset button for 10 seconds after plugging the device in.

In my experience, it's not a good idea to have a device automatically roll back firmware and erase user data after failed boots. These mechanisms get triggered too easily during certain power outages (power comes on then goes off just long enough to cause multiple failed boots) or when users are doing simple things like rearranging their power cables.

You need to have the firmware equivalent of a platform team.

It's common now for medium and large companies to have some variant of a cloud platform team: People responsible for shared practices, infrastructure, and processes in the cloud.

Smart hardware companies have done the same for decades. You have a firmware platform team that handles things like update protocols, recovery protocols, testing checklists, on-device OTA update architecture, and other critical functions.

When you're a company like Samsung that continuously releases and develops products this actually increases your time to market rather than decreasing it. You let each product team focus on the parts of the firmware that make their product valuable and free them from having to roll their own update systems

Two important features I insist on for products I develop:

1. Staged rollout of firmware updates. It’s common practice for apps and software but for some reason it’s less common with firmware. Rolling out to 1% (or less, depending on scale) of devices and waiting a day is cheap insurance. Side note: Build a good relationship with customer service people so you hear about these things immediately.

2. A failsafe firmware reset back to factory state. Some sequence that resets the device completely back to the way it was when it came out of the box, firmware included, as a last resort. In conjunction, your automated tests need to confirm that every factory firmware you’ve ever released can update to the latest firmware.

because some undeserving person (who is not in their group) might get it.

Surely someone, somewhere feels like this, but it’s more often a strawman argument used to make opposing arguments more easily dismissible. The discussions I have with people offline aren’t interested in these types of dismissals. I know many people who genuinely want better healthcare, cheaper education, and stronger social safety nets but who disagree with the specifics of proposals. Like most things in politics, if an argument reduces the other side to an easily-dismissible evil, it’s probably not an accurate representation of the counterarguments.

From real world anecdotes, the concern about things like student loan forgiveness (as the most recent example of an expensive social program being debated) are more about the extreme cost of the program contributing to an ever increasing list of expenditures. People are nervous about the amount of government spending and how it’s being distributed semi-randomly. This goes back to the rampant COVID loans to businesses, the stimulus programs that far overshot their target, and now proposals to give certain households with up to $250K income a free $10K.

People understand that these things do matter in a society where we’re all bidding for a limited supply of homes and such. It’s nice to imagine someone having a reduced debt load, but people still think about where that money comes from and how the uneven distribution of that money gives some people (excluding those who paid their loans off early) a financial leg up in places like the competitive housing market.

It’s all connected. The money must come from somewhere, and we’re all operating within the same markets. It’s disingenuous to pretend that there are no consequences for these programs, which IMO is where politicians fall far short of structuring them and pitching them to a wider audience.

perhaps arguing that the cost of the something has to come from somewhere.

This is exactly what’s going on. People know that these expenditures ultimately come out of the company’s operating budget, which diminishes the funds available for other things. Installing EV chargers is a great environmental move in my personal opinion, but we can’t pretend it’s unrelated to discussions come raise/bonus time when people are told that their raises are smaller than expected because budgets are stretched this year.

The EV chargers may be a tiny contributor, but they’re still an unbalanced distribution of the company’s funds based on something completely unrelated to performance. People are keenly aware of these things.

Exercise and raising testosterone will have a meaningful effect.

To be completely clear: Taking testosterone will actually worsen fertility. TRT will severely reduce fertility.

Lifestyle changes that improve testosterone (diet, exercise, physical activity of any kind) are correlated with increased fertility though.

That makes a lot of sense to me. One of the reasons I stick mostly with software is that it allows for much quicker iteration.

4-5 day turnaround from OSH park is quite fast. Keep in mind that you usually need to order parts from Digi-Key or another supplier when you finish the design anyway. If you have a mistake on a PCB, it's faster to use a tiny stitch wire than to make a whole new PCB.

On a professional level: You can always buy fast turn PCBs if you need them ASAP, but you'll pay for it. Usually cheaper than paying engineers to fiddle with finicky PCB milling or etching machines, though.

Obviously what you've done here is just getting started, but it points in a really interesting direction. A 3D printer with swappable heads for plotting and an add-on PCB etching kit should definitely have a market.

Chemical etching is more of a novelty these days. A cheap CNC mill produces much better results without the mess and uncertainty of chemical etching: https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-...

On the professional level, several manufacturers make dedicated PCB mills: https://www.lpkfusa.com/products/pcb_prototyping/machines/ These machines have helpful features to index tools to the surface and align the panels as you flip them over for two-layer designs.

I love seeing DIY PCB manufacturing projects like this. Using the 3D printer as a plotter is a creative take on the traditional DIY process.

For any aspiring EE hobbyists: Manufacturing your own PCBs is almost never worth the effort. You'll spend days or weeks getting the process and tooling right, and you still have to manually wire any vias that connect the front and back sides of the PCB. These DIY PCB manufacturing projects are fun if you're in it for the experience, but very impractical for getting work done. It's quick and easy to order small quantity PCBs online.

OSH Park is a popular option: https://oshpark.com/#services You can get 3 boards in 9-12 days for $5/square inch. If you need the boards sooner, $10/square inch will get you a 4-5 day turnaround time. You won't save any money by buying all of the gear to DIY etch your boards, and you certainly won't save any time.

Good to hear. I led the UniFi Protect effort at Ubiquiti. Responsiveness and fast time-to-video were our top UX priorities for the system. The WebRTC direct-connect and bypassing cloud servers were big factors in delivering that responsiveness. The added security and lack of monthly fees was another major bonus.

This 75% number is not from a formal study. The number supposedly comes from quotes from 3 different psychiatrists who quoted the same 75% number.

The author verified the 75% number by asking her Facebook followers.

  Do most med students require psych drugs for day-to-day
  survival? I turned my question over to Facebook: “75% of
  med students and residents are taking either stimulants
  or antidepressants or both. True or false?”
She cherry-picked a few Facebook responses to include in the article, but even some of those don't support the author's claim:
  but I have no idea if it’s 75%…I don’t know enough of my
  class well enough to have that info, nor do I think anyone
  does…there are usually cliques of up to 25 people, but for
  people to say they know for sure details of 75% of their
  class would be hard for me to believe but maybe…there is a
  lot of it, I agree with that.
And
  Being completely honest 75% seems a bit high, but I wouldn’t
  be that surprised if it were true
The author's real point is buried at the bottom: Medical licensing requires doctors to disclose their psychiatric history and medication use. Admitting previous psychiatric problems on your licensing form requires a detailed explanation of the condition and treatment. Doctors know this, so they have a perverse incentive to hide their treatment or even avoid treatment at all for fear of risking their careers.

Ubiquiti Networks | Draper, UT or Portland, OR | ONSITE FULLTIME | ubnt.com

Ubiquiti is a high-performance networking hardware company. Our UniFi Video IP Security Camera team is hiring for several positions in our Draper, UT and Portland, OR offices. Join us to develop our next-generation security camera platform on top of Ubiquiti's industry-leading networking platform.

Senior Devops Engineer - Develop, extend, scale, and maintain our NodeJS cloud services backend. Seeking senior engineers with a track record of NodeJS development at scale.

Senior JavaScript Video Engineer - If you have significant experience with WebRTC video, WebRTC data channels, Media Source Extensions, or any other deep experience with JavaScript and video, we might have a position for you. Our stack includes React, Redux on the front-end and NodeJS with native C++ extensions on the back-end.

Computer Vision Engineer - Implement computer vision functions in our embedded camera systems. Motion detection, object tracking, person detection, facial recognition, and more. OpenCV experience is required, embedded systems experience is a plus.

Additional job listings and more company information available on our website: https://careers.ubnt.com/

Please contact me directly if interested. My e-mail address is available in my HN profile. Onsite preferred, but we do hire remote candidates who have truly exceptional track records.

I don't understand the real value in this. They take a bunch of BGA parts + passives and put the dies in a bigger BGA that approaches the same PCB area?

It's like DRY (don't repeat yourself) for embedded systems. This package wraps the common layout tasks of an embedded systems design in to an easy, pre-packaged module. The PCB designer no longer has to do the layout work of all of the DRAM and power-supply traces, which can consume a lot of time and effort when you're just trying to do a basic design.

If someone has the manufacturing capability to put down one integrated BGA part, then they have the capability of putting down the DRAM and processors just the same as well as the 0201s or whatever passives to support it.

That's the other great thing about this package: The BGA pitch (distance between BGA balls) is a relatively large 1.27mm. This allows for the use of much cheaper PCB processes because the designer doesn't have to use very fine vias and traces to route in between the balls. For reference, many BGA packages these days have 0.8mm, 0.5mm, or even 0.4mm pitches and require more expensive PCB processes for the entire board just to place that one chip.

Also, how many hackers are actually putting down BGAs like this when you can buy a properly routed, tested and assembled BeagleBone for so cheap? I know a few are, but they are the 0.1% perhaps? All the makers are rocking Arduinos and Raspberry Pis and can't even spell B-G-A.

Placing BGAs is quite easy for the hobbyist these days, especially now that hot-air stations can be had cheaply. You're right though, in that this product isn't targeted at the weekend DIYer. It's for people building boards who want a CPU but don't want to mess with tight PCB tolerances and all of the high-speed routing required. It also represents a very easy path toward manufacturing for those DIYers who do start with a BBB-based design and want to move to something they can mass produce and sell.

With this, they could drop a single, easy BGA package on their PCB and skip straight to doing design and layout only for the parts of their design that differ from every other embedded systems design (e.g. not the DRAM <-> CPU interface, not the power supply layout, and so on).

Luxul | Draper, UT | JavaScript front-end engineer | ONSITE

We build top quality network hardware: high-throughput routers, high-power wireless access points, and managed switches. I'm looking for an ambitious JavaScript front-end engineer to help drive our user interface development.

Strong JavaScript knowledge is a must. Our current system uses React, Redux, some ES6 and ES7 features through Babel, and Webpack. Familiarity with those is a plus but we're also more than happy to hire ambitious candidates who are eager to learn. If you're interested in Golang there's opportunity to work on the backend components of the web architecture as well.

We're a small engineering team with a diverse array of backgrounds and deep experience in different fields. This is a good place to learn and we're always looking for experienced developers who can teach us something as well. The company continues to experience very strong year-over-year sales and sales growth. Developers get their own office with a door as we value having a good development atmosphere and we're flexible on working schedules.

The full job listing is available here: http://luxul.com/engineering-careers

My e-mail address is tstokes at luxul(dot)com. Send me an e-mail if you're in the Salt Lake City area and we'll talk and/or meet up for lunch.

This is a good study, but it's important to understand that the study results [1] don't really contradict much of our current understanding of serotonin-related antidepressant activity. If you read through the actual study, you'll see that the authors aren't disagreeing with SSRI activity but rather attempting to gather more insight into the accepted anxiolytic activity of SSRIs.

Neurotransmitter reductionism is one of the more difficult pop-neuropsychiatry concepts to shake, because it's so tempting to think of neurotransmitters like serotonin in the same way we've come to think of more basic biomarkers like cholesterol levels or other hormone levels. Neurotransmitter function is several orders of magnitude more complex, and can't simply be summarized as "too much" or "too little."

For example, neurotransmitter signaling is often divided in to two components: Tonic and phasic release. Tonic signaling is lower frequency (think closer to DC current for a very crude analogy), while phasic release is higher frequency (think more along the lines of AC current). The balance of tonic vs phasic signaling often has a massive influence on the actual outcome of the signaling. SSRIs are frequently (and wrongly) thought of as generically "increasing serotonin levels" when what they're really doing is altering serotonin dynamics in the synaptic cleft. Inhibiting the serotonin reuptake pump causes the serotonin to stick around longer in the synaptic cleft, which (again, roughly speaking) slows the serotonin dynamics down a bit and moves toward tonic, rather than phasic, signaling. It's not difficult to find studies showing relationships between serotonin tonic and phasic signaling, SSRIs, and stress adaptation differences. See [2] for the first example I found in a quick search.

Another very important component of serotonin signaling are 5-HT1A autoreceptors located on presynaptic terminals. These are part of the feedback loop regulating serotonin release. Briefly, 5-HT1A autoreceptors bind serotonin in the synaptic cleft and apply negative feedback to serotonin release. More serotonin in the synaptic cleft results in more 5-HT1A autoreceptor activation, which will in turn slow serotonin release. SSRIs will increase extracellular serotonin area under the curve, which will result in additional 5-HT1A activation and altered serotonin release dynamics. This system will ultimately re-regulate to some other set-point after several weeks, which is theorized to be part of the reason for the therapeutic lag in SSRI treatment, and also thought to explain why SSRIs often initially cause more anxiety by acutely increasing serotonin levels before the system re-regulates. 5-HT1A autoreceptor modulation is also the theorized mechanism of action of anti-anxiety medications like Buspirone, and 5-HT1A modulation is a property of two of the most recent anti-depressant medications Vortioxetine and Vilazadone.

This is another good study to have, but it's important to not be too quick to think that this contradicts our current understandings.

[1] http://archpsyc.jamanetwork.com/article.aspx?articleid=23197...

[2] http://www.ncbi.nlm.nih.gov/pubmed/22791197

Before anyone considers experimenting with Donepezil or other acetylcholinesterase inhibitors in hopes of enhancing their learning, it should be noted that there are plenty of unknowns and a few serious concerns around altering the cholinesterase levels of otherwise healthy adults.

Briefly: Acetylcholinesterase terminates acetylcholine neurotransmission events by deactivating the acetylcholine, allowing it to be reused. An acetylcholinesterase inhibitor such as the Donepezil used in the article inhibits the action of acetylcholinesterase, which in turn enhances acetylcholine neurotransmission in a dose-dependent manner.

Highly potent acetylcholinesterase inhibitors are used as poisons (Sarin gas, for example) because they interfere with all of the acetylcholine-based neurotransmission that happens throughout your brain and body. Less potent inhibitors are used at lower doses in Alzheimer's disease as it is hoped that they will improve cognitive function and perhaps even slow disease progression. Thus far the results have been mixed.

Now the bad news: Cholinergic neurotransmission is widespread through your brain and your body. Acetylcholinesterase inhibitors are a very blunt and non-specific way to manipulate that neurotransmission. Unfortunately, you can't just enhance memory formation and learning related neurotransmission, you amplifiy cholinergic transmission indiscriminately everywhere. As a result, it's possible to get some quite negative effects as well. There are reports of acetylcholinesterase inhibitors causing or at least inducing PTSD-like symptoms ( http://www.ncbi.nlm.nih.gov/pubmed/17308243 ). Furthermore, we just don't know the long-term effects of these medications on young, healthy adults as they've primarily been studied in elderly populations.

In short: It's potentially very unwise to use Donepezil or similar medications for the purposes of enhancing your learning or your memory. Leave the experimentation to the carefully controlled studies until more is known on these powerful substances.

Money and wealth 13 years ago

The takeaway from this article is that hoarding cash is not a good store of wealth, and that the key to long-term wealth is to acquire net income generating assets. Great points for sure, but I strongly disagree with his assertions that saving up for retirement is ill-advised and that traditional investments (stocks, etc.) are too volatile and risky to be useful.

He never explicitly gives any advice for acquiring net income generating assets, but reading between the lines (and given the context) the advice is to pursue entrepreneurship. While I strongly encourage people to pursue entrepreneurship when it makes sense for them to do so, I don't think it's a substitute for proper retirement planning and long-term investment as this article seems to suggest. And it's certainly not good retirement planning advice for anyone who doesn't already understand the basic differences between money, wealth, and assets as this article seems to imply.

Given the failure rate of entrepreneurs and start-ups on average, it seems quite strange to dismiss traditional retirement planning and long-term savings as too risky while encouraging entrepreneurship as the solution in the same article. Traditional retirement investment vehicles (low-overhead diversified ETFs with a mix of bonds, ratio depending on years until retirement, combined with taking advantage of tax-advantaged accounts such as 401Ks, IRAs, etc) isn't anywhere near as risky, especially over the long term. Remember, a single stock market crash in your 20s or 30s is going to have virtually no impact on your retirement savings in your 50s and 60s. When saving for retirement, you have to consider the timeframe involved. By the same token, risky entrepreneurship isn't all that risky when you're young.

Perhaps the most fascinating part of this letter is observing people's reactions to it. In the letter, the author goes so far as to admit that s/he is and always will be a psychopath without a sense of guilt or remorse toward others and a keen ability to recognize and exploit weaknesses in others for his/her own gain.

Judging by the comments here, the letter has done just that. One comment below notes that "Jeez, that's the single most interesting, insightful, and well-written piece I've read on the internet in a long time." Others are expressing a desire to meet the author or expressing how they can identify with the author. It's incredible to see just how effectively this letter resonates with the people who read it.

Don't get me wrong: It's both impressive and admirable that the author was able to not only admit that he needed therapy but to press on long enough to make therapy work for himself in an effective manner. I don't want to downplay his accomplishments. However, it is still interesting to dissect and observe all of the persuasiveness of the letter and the fluidity with which the author transforms psychopathy from a very difficult personality disorder into somewhat of a super power that the reader can't help but envy by the end of the letter.

As you read the letter and experience strong feelings of empathy for the author, consider his own poignant words at the end: "In the end, psychopaths need to be given that very thing everyone believes they lack for others, empathy."

The letter begins with the psychopath distancing himself from the traditional destructive psychopathic traits in the most admirable and self-aggrandizing way possible: He went against all odds and admitted himself into treatment, where he claims the health agency had never seen someone of his nature walk-in before and he was too incredible of a case for anyone but the highest-ranking therapist to handle.

He continues by setting up various straw-man caricatures of psychopathy ("cartoon evil serial killers" and the CEO who prizes profits over people) and knocking them down one-by-one, leaving the reader feeling guilty of possibly embracing those stereotypes at one point. With the reader feeling a bit guilty, empathetic, and as if the author's condition is simply misunderstood, the author has set the stage to rebuild the reader's view of psychopathy in a way that benefits the author.

Toward the end, he even goes so far as to put words in the reader's mouth just so he can turn around and undermine the very caricature of a psychopath he suggested you might hold : "Such as statement might tempt you to say 'well obviously you're not a real psychopath then'. As if the definition of a psychopath is someone who exploits others for their personal power, satisfaction or gain."

The rest of the article explains the author's psychopathy the way the author wants you to view it: As "a highly trained perception, ability to adapt, and a lack of judgment borne of pragmatic and flexible moral reasoning." He goes on to say that he "enjoy[s] a reputation of being someone of intense understanding and observation with a keen strategic instinct." At this point, the author has completely distanced his psychopathy from the purely negative caricature he painted in the first half of his letter. Who wouldn't be envious of such incredible, valuable, and morally-neutral abilities as he described them?

I've read the letter several times over, and I'm still amazed at how effective it is at garnering empathy from the reader and cultivating a sense that the author is an impressive individual who has triumphed over adversity after a great struggle. And it's true that overcoming your own objections to seek, and stick with, treatment for such a severe personality disorder is both impressive and admirable. His points about the general public's misunderstanding of true psychopathy are equally true, although he crucially omits any and all explanations of how psychopathy can actually be dangerous and destructive to others. It's an incredible piece of writing, and incredibly persuasive and manipulative in a way that I'm sure PR and marketing teams everywhere would be jealous of.

A fun endeavor for sure and I like that he measured before & after results for comparison, but I'm not convinced that he made a real improvement. He notes that he saw "a 1db increase in downstream levels occurred along with a full 1db increase in S/N" but 1dB is well within the margin of error and day-to-day variations, especially for the imprecise internal power measurement circuits of the modem. In fact, simply adjusting and re-tightening your coaxial cable can easily result in more than a 1dB change. Also, I'm not quite sure where he came up with the 1000:1 reduction in power rail noise, because his waveforms show significantly less (although still significant) noise reduction. Finally, having a 10-ping average of 7ms vs 6ms is very much within the margin of error one would expect to see.

If he really wanted to improve the RF performance of his modem, he should have used small, low-value, surface-mount capacitors instead of the large tantalum capacitors with relatively long leads and large electrolytic capacitors. Cable modems and other RF equipment operate at very high frequencies by definition, and tantalum & electrolytic capacitors with long leads are ineffective at these high frequencies. The long leads of the capacitors act as inductors, which will prevent the high frequency fluctuations from ever even reaching the capacitor.

If you look closely, you can see that he added his tantalum capacitors to the already-present small ceramic decoupling capacitors. If he really wanted to improve the RF performance of the circuit, he would have been better off adding more low-value, surface-mount ceramic capacitors in parallel with the pre-existing ones to help with the high-frequency decoupling, where it counts in an RF circuit. If he was really adventurous, he could splice some ferrite beads in series with the supply lines to form an LC filter for even better noise rejection.

Furthermore, he could have taken measures to improve the S/N ratio of the circuit by improving the shielding around the sensitive RF circuits in the middle of the board. You can see where the designer originally made room for a shield "can" to be soldered over the sensitive components, indicated by the exposed copper rectangle around the heatsink area. However, you may get unlucky if your shield can volume has resonant frequencies in the operating range of the circuit which will trigger feedback and render the circuit inoperable. A safer option would be to add some RF-absorbing foam over the sensitive area to absorb the noise.

This is a very misleading Kickstarter. They open with a graphic containing logos for 10+ different wireless protocols (including WiFi!), but the board itself only supports a fraction of those. It has pads for two RFM12B module, a Z-Wave module, and an EnOcean module as well as a socket for an XBee module. They also included a few nice extras such as a real time clock and a temperature sensor.

However, you have to scroll to the bottom to see that the remaining "supported protocols" such as UMTS, 3G, 4G, LTE, WiFi, Bluetooth, Bluetooth Low Energy, X10, etc. are supported "via USB" or over the ethernet port. In other words, they have nothing to do with this project. You buy those adapters (separately) and plug them into any Raspberry Pi.

This looks like a decent PCB and case if you want to add an RFM12B, Z-Wave, EnOcean, or XBee module to your R-Pi and get a decent case, but they've stretched the marketing copy to include "support" for all of these unrelated protocols and features.

EDIT: As pointed out by unwind, this PCB has an include XBee header to support the addition of a Bluetooth, WiFi, or Zigbee module. If you're after these protocols CISECO (the company behind this kickstarter) has a £3.90 adapter board to connect these to the Pi: http://shop.ciseco.co.uk/slice-of-pi-add-on-for-raspberry-pi...

Very interesting perspective into the shortcomings of our military system. The article is worth reading through, but in summary: The author suggests that our drawn-out, meandering wars are the result of a perverse incentive system among the higher ranks of the military. Leaders are not rewarded for successes or, perhaps more importantly, punished for their shortcomings and failures. Instead, they are given short, time-limited appointments in leadership roles, which changes the goal from military success to simply ensuring that nothing too bad happens on their watch. Likewise, these time-limited roles result in a diffusion of success, where everyone can claim that progress was at least partially due to some of their own actions.

Perhaps the most succinct explanation from the article:

    But the Army continues to do too little to sort the average performers from the
    outstanding ones. That has long-term consequences for the caliber of military
    leaders. A recent survey by students at Harvard’s Kennedy School of Government
    found that good young officers have left the military in large part because of
    frustration with military bureaucracy and the sense that the armed forces do
    not have a performance-oriented system for managing personnel.
The author proposes that the military should more frequently relieve poor performers from their positions until they find the person with the right personality and intelligence for the position.

I've never been involved in the military, but I feel as though this perverse incentive structure is common among many businesses as well. Most big companies I've worked with have a few obviously incompetent employees in leadership positions, but harbor an unwillingness to demote or fire them because they've "earned" their position through hard work and loyalty to the company. Taken to the extreme, this is the famous "Peter Principle," which suggests that employees will continue to be promoted until they reach a position beyond their abilities, at which point they languish in mediocrity. ( http://en.wikipedia.org/wiki/Peter_principle )

Summary: TCP throughput drops dramatically when packet loss is present. This technique uses forward error correction to compensate for packet loss, resulting in higher effective throughput over lossy links. Many WiFi and cellular connections are lossy, so this would be helpful in those cases.

They haven't improved the underlying link rate at all. In fact, the FEC overhead is going to reduce the effective link rate. However, in some edge-case high packet loss scenarios, the reduced packet loss will more than make up for the reduced effective link rate.

From what I can gather, the White House didn't explicitly ask for the clip to be removed. Rather, they suggested the clip might violate YouTube's own terms of service.

From the article:

> White House officials had asked Google earlier on Friday to reconsider whether the video had violated YouTube's terms of service

Still, the net effect is the same. The gesture was made with the goal of having the video removed from YouTube. It's unfortunate that our administration went down this path at all.

This move is sure to upset the Hacker News and tech enthusiast crowds. After all, who wants to pay full price for a product that continues to deliver ads to you? The tacit contract across the web is that free == ad supported, while paid == no ads.

However, I'm not so sure if the average consumer (the target audience for the Kindle) will even think twice about this. Consider cable TV; People happily pay for cable TV subscriptions which still include commercial ads. They (arguably) don't get in the way of the end-user experience, yet they subsidize the costs for TV programming. Likewise, the ads on the Kindle are limited to the lock screen and kept out of the way of the actual user experience.

Also note that Amazon has deliberately chosen to not offer a higher-priced version without ads. Without an option to pay more to remove ads, the consumer will never have to debate whether or not the annoyance of the ads is worth $30 dollars to them. Instead, the ads become a fact of life and are accepted without question by the end users. Even better, it widens the Kindle advertising demographic to include those with the most disposable income who would otherwise pay to remove the ads. Smart move.

The mounting holes alone make this new revision worth waiting for.

It's also nice to see the additional GPIO output which can be used either as an additional I2C bus or used for I2S (digital audio) output. The latter should be very useful for those who want to use the Raspberry Pi as a media center PC as it's trivial to convert I2S to S/PDIF or Toslink (optical).

Finally, I'm glad the GPIOs have been changed to expose the missing JTAG debug symbol. Having proper JTAG support makes low-level development far, far easier.

Look at it this way: A good "business guy" is going to be a shrewd negotiator, using every trick in the book to maximize the value of your company in every deal. S/he will go to great lengths to make your company look bigger, more capable, and like an excellent fit in every introduction, meeting, and potential sale.

However, every one of those negotiating skills is going to also be put to use when negotiating salary and equity split with your company. It's a double-edged sword.

I don't buy into the notion that business-minded people undervalue engineering talent in general. Sure, there are plenty of anecdotes otherwise, but the savvy business people know exactly what engineering talent is worth. However, that doesn't mean they won't still try to maximize their own share of the company's equity and payroll. Meanwhile, they have every incentive to minimize the amount of equity and salary handed out to engineering talent so they can hire as many people as possible without spending a dollar more than necessary.

It's not personal, it's just business. I'm not suggesting it's right, of course. Learning good negotiation skills and how to sell yourself well will go a long way to leveling the playing field.

    Flock uses new battery-friendly location technology and
    sophisticated algorithms to magically know which of your
    Facebook friends you are with when photos are taken.
My bet is that they're using the background significant location change service. Each time iOS wakes the app with a significant location change notification, Flock combs through your photos and sends their GPS coordinates from the EXIF data to the Flock servers.

What I'm really concerned about, though, is that to pull this off the app must send your location to the Flock servers for correlation with other users' photo locations. This means Bump now has a reasonably accurate location log for everyone using the Flock app.

I wrote a test app for the iOS significant location change service that logged my location for a week, and it was surprisingly accurate. Enough to clearly tell when I was at work, at home, driving down the freeway, etc.: http://www.tomjstokes.com/130/iphone-ios-4-2-background-loca...