HNHacker News
TopNewBestAskShowJobs

pjbk

553 karma · joined May 24, 2018

submissionscomments
pjbk··on I made my own PCBs with a 3D printer
Don't use a marker. I use 2-3 layers of TPU filament or Ninjaflex over copper treated with washable adhesive. Works wonderfully. As always, clean the copper very well with isopropyl before anything. You can also do flex PCBs this way:

- https://www.instructables.com/id/Make-Flexible-Circuit-Board...

pjbk··on Let's remove quaternions from every 3D engine (2018)
Reading some comments here...

* GA provides some nice savings when it comes to rotor/3D calculations, provided that the underlying data structures and architecture supports them. Check out the publications by Dietmar Hildenbrand and his team for several examples:

- https://www.researchgate.net/profile/Dietmar_Hildenbrand

* Quaternions start to exhibit several limitations when dealing with complex objects, even in 3D. It provides just the necessary structure to store quadrature information to avoid the "gimball lock" issue, for example. However the fact that it collapses the scalar with the pseudoscalar presents several problems again in calculations with dual quaternions and higher dimensions (projections, for once), and it's not much different from the hurdle of having to discriminate axial and polar vectors in Vector Calculus. The main issue is that its handedness doesn't scale well and has problems capturing the geometric nature and physics of the world in several dimensions (ie symplectic geometry).

* IMHO the real usefulness of GA is that, as it name implies, it's an algebra. That is what Clifford, Ball, Lie and Klein realized while extending the work of Grassmann on exterior algebras, screw theory, vector spaces and differential forms. Matrices, quaternions and some forms have awkward behaviors when they are treated symbolically as algebraic objects, being "leaky" on information or having singularities just because they are not the best representation. GA fixes that allowing you to formulate problems symbolically, and then you can almost blindly solve the equations with high confidence that the result will be sound. You can then convert the objects back to your favorite representation. For good examples, check out Terje Vold papers on:

- Rigid body dynamics: https://www.researchgate.net/publication/241273951_An_Introd..., and

- Electrodynamics: https://www.researchgate.net/publication/245345681_An_introd...)

[Note: Watch out for some typos]. For comparison, take a look at Featherstone's 6D Spatial Vector representation, which is similar to screws and I think shows the best you could do with Vector Calculus objects:

- http://bleyer.org/files/A%20Beginner's%20Guide%20to%206-D%20....

pjbk··on Ask HN: What interesting problems are you working on?
Zipline?
pjbk··on In Memoriam of Charles “Chuck” Peddle
So sad. I learned to program with my Atari 130XE, mainly in 6502 Assembly. Truly respected him and his constant engineering and entrepreneurship efforts.

The Computer History Museum interviewed him back in 2014 and posted the video on YT earlier this year: https://www.youtube.com/watch?v=enHF9lMseP8

Scene World Magazine also did an extensive interview 6 years ago: https://vimeo.com/89640027

pjbk··on Ramen restaurant prevalence is associated with stroke mortality in Japan
Now whenever I read articles of this type of statistical research, my mind immediately recalls Tyler Vigen's website and book... http://tylervigen.com/spurious-correlations
pjbk··on Why are there so few jobs in Rust?
I second some of the comments posted there.

I have been following Rust's evolution since its beginnings --as mainly an embedded systems programmer I was acquainted with Cyclone-- and through the years I have tried its different incarnations. The syntax, library support and environment has improved considerably. I have been trying to use it more in my work and personal projects, now that libraries have matured (specially networking and parsers/formatters) and has a better async model which is realtime-friendly. The availability of high level structures like tuples and traits are big time savers, and like Go and Python it can interoperate with C relatively easy.

The issue with the language is that it is an acquired taste. You only appreciate it once you know its history and the problems it is particularly trying to solve. That being said, some design decisions still feel arbitrary or an afterthought, which is annoying.

Most of my colleagues that program in high-level compiled languages and have tried it, hate it. For them it feels like a crippled C++ or Java that is unnecessarily restricted and with too much ad-hoc features ("why do you thought abusing the OR operator for closures was a good idea!"). The other half, which have been programming in C and Assembly (or more esoteric languages like Ada or Erlang) under certified environments for quite some time, are too much invested in those to make a change at this point. They recognize some advantages of the language as nice features to have, but nothing that will fundamentally change their systems programming. And it's another language to learn, track and target tools and libraries...

With more and more stuff moving to the Web and needing more high-level abstractions and becoming further declarative in nature, languages and environments have been getting increasingly polarized. Rust right now is stuck in the lonely middle ground. Perhaps it's just a good general purpose niche language for things that need safety and security like money transactions, and compiling browsers and webassembly applications. The language is still evolving and being actively maintained, thus only time will tell.

pjbk··on What Is Secure Remote Password (SRP) Protocol and How to Use It?
The implementation itself is relatively simple. The most popular Python implementation is Tom Cocagne's pysrp that builds on csrp, his original C implementation: https://github.com/cocagne/pysrp. I used this as a guide to write a pure Python3 implementation of SRP-6a some years ago that I needed for protocol testing on embedded devices, and to internalize how the algorithm worked and the complexity of the calculations: https://bitbucket.org/pbleyer/py3srp.

That being said, I would never use plain vanilla Python for cryptography in a system that needs to be strongly secured. Too many side channel and timing attacks possible where you can replicate or estimate the state of things locally once you know the other side is running a Python VM.

pjbk··on What is Symplectic Geometry? (2016) [pdf]
Correct, and it also appears in Electromagnetism and Quantum Physics (in several ways), and in Lie theory that is useful for rotations and differential applications.
pjbk··on What is Symplectic Geometry? (2016) [pdf]
For those into physics, I wholeheartedly recommend Marsden and Ratiu's book, "Introduction to Mechanics and Symmetry", which deals mainly with the different formulations of physics applied to symplectic and associated geometries.
pjbk··on What Is Secure Remote Password (SRP) Protocol and How to Use It?
Actually, that is the reason Apple HomeKit, that is designed mostly for IoT devices (WiFi, BT), uses SRP as part of the authentication process during pairing.
pjbk··on Daniel W. Dobberpuhl
There were some very nice early ARM-Linux boards based on it. For example, the LART was an open design made by a group at the Delft University centered on the SA1100. Pretty cool times especially if you were into embedded devices that could connect to the Internet.

https://web.archive.org/web/20000816095212/http://www.lart.t...

pjbk··on The architecture of declarative configuration management
Exactly, and structural and functional constraints over properties and rules.

I understand the need to reinvent the wheel, but most of these efforts feel to me like customizations that most declarative languages can provide, albeit possibly in a non-intuitive syntax.

pjbk··on Young Homebuyers Are Vanishing from the U.S.
Depends on the location, but a crashing house market halving the price (or even more) of properties is not uncommon. It happened in the last one.
pjbk··on Nim: Scripting Ease in a Compiled Language
Some of us work in regulated industries where coding standards are not strong suggestions but unconditional requirements. Unambiguous names and identifiers precludes the use of Nim as a tool in any of those fields just by an improper design decision. Sounds very bad and completely avoidable to me.

There is a reason old languages were many times case insensitive but not anymore.

pjbk··on YouTube is taking down educational hacking videos
> which leads to their production becoming better and better, which leads to a better product, but less innovation.

"Better" in the sense that they are more polished and edited, but unfortunately that means more filtered, targeted and biased. There is an intrinsic, authentic value in raw productions that gets lost or doesn't exist in the former.

pjbk··on VxWorks now with C++17 and Rust support, alongside Ada and SPARK
And not only that. Even if there is money on the table or lives at stake, many companies choose to outsource embedded development instead of increasing salaries to attract top talent. Just recently Boeing software practices were heavily criticized concerning the 737 Max fiasco [0]. Sadly it has become a tendency not only in the avionics industry.

[0] https://www.reddit.com/r/boeing/comments/c6tknw/boeings_737_...

pjbk··on VxWorks now with C++17 and Rust support, alongside Ada and SPARK
Tornado. That brings me memories. ;-) IMHO it was much better than the current Eclipse-based IDE they have now. At the time, and especially with custom SoCs or CPUs like the SPARC you were using, there were very few options to do that. These days we have tools like Percepio's Tracealyzer [0] that targets a multitude of microcontrollers and RTOSes, and allows you to decouple a bit your development for a specific architecture. Many vendors also have similar tools for their offerings, for example the RTX viewer for ARM tools.

[0] https://percepio.com/tracealyzer

pjbk··on VxWorks now with C++17 and Rust support, alongside Ada and SPARK
Embedded systems here, several projects using VxWorks through the years. Mostly safety motion controllers, robotics, medical and consumer FPGA processing boards.

Due to cost and availability of modern tools (compilers, testing, V&V, CI/CD and virtualization), there is a big trend right now to migrate those projects into RT Linux, which has come of age. I guess the support for modern languages from Wind River is their attempt to avoid losing customers or attracting new ones. They used to have an edge due to the certificated environments, but modern development and systems are becoming so complex (eg networking, cloud, etc) that using a pre-certified kernel is just a tiny bit of the certification process, and in many cases the complete system has to be validated anyway.

pjbk··on World's Best-Run Pension Funds Say It's Time to Start Worrying
> Some people work and produce stuff, some people do not.

And some other people print money, whose value should be tied somewhat to the stuff that some people did or will certainly produce, but now most often does not.

pjbk··on Deep Learning: Our Miraculous Year 1990-1991
I guess many institutions and research groups can write similar accounts. Even the late 80s were somewhat productive concerning NNs and what today we call ML, just by searching publications of that era.

We had also some relatively sophisticated tools, and looking back in time one could say they were deep-learning-ish. In my personal case I did some research for weather forecasting using BPN/TDNN, Kohonen and RNNs with the Stuttgart Neural Network Simulator [0]. It allowed some flexibility creating and stacking models.

[0] http://www.ra.cs.uni-tuebingen.de/SNNS/welcome.html

pjbk··on Do you have a problem? Write a compiler
Or just wait till we have a distributed problem recognizer or single-conscience general AI: solved and automated once, replicated and reused forever.
pjbk··on Xilinx rolls out easier-to-use free FPGA programming tools
SystemVerilog and synthesizable SystemC, at least.
pjbk··on What should the next search engine look like?
Does anyone remember the old Kartoo graphical/relational search engine? (Not its current hijacked reincarnation at kartoo.com)

It was not very practical as a generic search engine, but I found some very interesting links following the maps of related terms. I thought that kind of intuitive user interface would be improved and become popular, but they never did.

pjbk··on Rocket Mail
Being this HN, I clicked and I was not disappointed.
pjbk··on Inkscape 1.0 Beta 1
This is great news! Will check if they fixed the issues loading files with autoconnectors, which was the only thing preventing me to use it for engineering diagrams.

I just wish that Krita had the same text editing capabilities as Inkscape.

pjbk··on Recession Already Grips Corners of U.S., Menacing Trump’s 2020 Bid
I have worked in several industries so I have a rather large network of contractor contacts and outsourcing services. I usually get a handful of cold requests and service offers per month, but this year my inbox has received that number of requests per week or even more. In a good economy these businesses can barely keep up with their workload, thus this probably means that things are cooling off. Asian businesses and companies that rely on them moreso due to the uncertainty of the tariffs and trade war. It feels very much like 2007-2008, although that may be subjective on my part.
pjbk··on The Next Recession Will Destroy Millennials
As the article mentions, many people really never got out of the last recession. If we have another one, for them it will be just a continuation of a large one, making recovery even more difficult that it is now. Lost time, opportunities, compounded gains and mixing it with less income and higher cost of living makes it a situation not easy to overcome.

We are still bearing the consequences of the big bail out, forcefully paid by most of us instead of allowing some events to follow their natural path and the chance that things eventually balanced out. The artificiality of that solution has created abnormal behaviors and conditions such as the access to cheap money and a double standard for financial instruments, like personal vs institutional debt. Those situations effectively devalue money and allow arrangements that are very paradoxical from an economic standpoint as you pointed out.

As it has been mentioned in other comments here, I don't think this is limited to Millennials. Just by looking at the diversity of the economic statistics per state in the US you can see it is a more generalized problem. I would not consider that a complete "economy" has recovered from a recession when the numbers tell us we have just delayed aftermaths and major factions of it are still underwater with very bad prognosis.

pjbk··on Tardigrades are now on the moon thanks to a crashed Israeli spacecraft?
It wouldn't surprise me if some day we discover they were there before us, anyway.
pjbk··on Fuck Hard Work
Certainly touches a nerve.

I generally love my career and consider it more a hobby than a job, so I "work" very hard and I don't mind doing that. However in my life the most money I've made and what most people would consider to be successful, is when I worked the least. Which is appalling and baffles me since it hurts the values I was raised with and struggle to keep believing in.

I could convince myself that at those times I was reaping the benefits of my previous hard work but honestly I know that I had the luck to work in a team where people worked steadily in moderation or little, and had the opportunity to make some good decisions in a favorable environment.

We should stop listening to all these egotistical stories of success and humblebragging tainted by survivor bias. Most of the time they provide useless or wrong advice and make more harm than good. I think we should focus more on presenting fair points of view, learning and teaching others about healthy work habits and financial decisions, and in the process have a bit of more empathy to everyone successful or not.

pjbk··on SoftBank’s next bet: $940M into autonomous delivery startup Nuro
> Not to the same degree.

Yes, in the same degree. It is a street vehicle. They even published their safety manifesto some months ago: https://static1.squarespace.com/static/57bcb0e02994ca36c2ee7...

However you may meet standards and regulations, and pass all certifications, but the issues about autonomous vehicles present big unknowns. We already have accidents and fatalities related to use or misuse of UAVs. Even small sidewalk delivery vehicles may injure or kill a baby in a stroller because of incorrect detection or malfunction, or start a major accident when other drivers need to swerve to avoid them because they entered a road or stopped without notice.

Nuro is testing in Arizona like other self-driving vehicles companies. Some people are getting increasingly annoyed dealing with their behaviors and have started retaliating. With Waymo's cars, for example: https://www.azcentral.com/story/money/business/tech/2018/12/...

← PreviousPage 6 of 7Next →