HNHacker News
TopNewBestAskShowJobs

jlward4th

466 karma · joined May 10, 2009

www.jamesward.com

[ my public key: https://keybase.io/jamesward; my proof: https://keybase.io/jamesward/sigs/UvWRvrWAvWBz2JgAWyfVvlBAugfGHsXNCsVtOkQpY_Q ]

submissionscomments
jlward4th··on How I discovered a hidden microphone on a Chinese NanoKVM
I'm not an expert on this, but know enough to know the KVM doesn't need its own IP. In fact, the KVM I replaced it with provides ethernet to both my machines (at the same time) without getting its own IP.
jlward4th··on How I discovered a hidden microphone on a Chinese NanoKVM
The network was active for both machines connected to it. And it had its own IP. So 3 MAC addresses in total. I didn't ever open it up. But maybe someone will be interested in buying one and exploring more.
jlward4th··on How I discovered a hidden microphone on a Chinese NanoKVM
The KVM didn't have any documentation on anything related to its network interface. I ran a port scan on it but didn't know if there was a way to log into it.
jlward4th··on How I discovered a hidden microphone on a Chinese NanoKVM
It is this one: https://www.amazon.com/dp/B0CP4PD3SM

I did post a review there citing my security concerns.

Honestly I didn't go further with the investigation because if someone really has all my data, I'm worried about retribution.

jlward4th··on How I discovered a hidden microphone on a Chinese NanoKVM
I recently discovered a similar concerning security issue with my KVM. In my case it was a pretty standard KVM for multiple machines to share a keyboard, mouse, and screen but also Ethernet. One day while looking at my home network I noticed the KVM had its own IP and was transferring GBs of data everyday. I quickly blocked it from my network. But having used it for a number of months I worried that with screen capture and access to all my input devices, someone could have gotten access to pretty much everything I use. I wasn’t able to figure out if any data was actually being sent off my network and I really didn’t want to put myself in any more risk so I just threw it in an electronics recycling bin. Pretty scary what a network connected KVM could maliciously do.
jlward4th··on Flix – A powerful effect-oriented programming language
We are working with the Effect folks and will make some noise about it with them. Otherwise, you can follow me on X: James Ward
jlward4th··on Flix – A powerful effect-oriented programming language
Shilling my book "Effect Oriented Programming" https://effectorientedprogramming.com/

The book uses Scala & ZIO but intends to be more about the concepts of Effects than the actual implementation. I'd love to do a Flix version of the book at some point. But first we are working on the TypeScript Effect version.

jlward4th··on The decline and fall of Java on the desktop
I'm definitely biased but I think Kotlin for Desktop apps (https://www.jetbrains.com/lp/compose-desktop/) will take a lot of the energy in this space.
jlward4th··on The Modern Java Platform – 2021 Edition
Author here. Yeah, the Go language feels very archaic when using more modern languages. Some things I miss when I use Go: immutability as a default, monadic error handling, type classes, higher-kinded types, high-level collection operations (map, flatmap, filter, etc), ADTs, extensive pattern matching, expression-orientedness, and explicit null handling.
jlward4th··on The algebraic structure of functions, illustrated using React components
I was expecting to see something about the algebraic laws for functors and monads.
jlward4th··on Google Home (in)Security
Hopefully it also has the CORS headers for cross-origin access. ;)
jlward4th··on Volvo to Use Google Assistant, Play Store and Maps in Next-Gen Infotainment
The switch to Google Maps will definitely be nice since their current maps are crap. Not sure about the other pieces but it probably can't get worse than it currently is. I have the newest XC90 and the on-screen stuff is absolutely horrible. I run into many bugs every day and the response from support has been abysmal.
jlward4th··on Near Future of Programming Languages [pdf]
"Where will the next great programming language come from?"

Interestingly Scala has come from Academia, Industry, and Hobbyists. And for me it's already the next great programming language. Yeah, it has some warts and is hard to learn but that's true of all great things. :)

jlward4th··on JavaScript Concurrency Model and Event Loop
Misleading title. There was actually nothing about concurrency in the article.
jlward4th··on App.net is shutting down
Can I have my $75 back?
jlward4th··on Webhooks: The Devil in the Details
Or a more simple solution... Have a webhook receiver send the messages to Kafka. Then you don't have to change to a more complex delivery protocol.
jlward4th··on Serverless Architectures
In regards to Stateless and 12 Factor...

> This has a huge impact on application architecture, albeit not a unique one - the ‘Twelve-Factor App’ concept has precisely the same restriction.

While 12 Factor does say that processes should be stateless I've never thought it really meant it. Connection Pools and in-memory caches are pretty typical in 12 Factor (or all non-serverless) apps. And for me that is what makes serverless kinda silly. Some global state is actually pretty useful when you can avoid the overhead of initializing things or going over the network.

jlward4th··on Eradicating Earth’s Mosquitoes to Fight Disease Is Probably a Bad Idea
TL; DR: We actually have no idea what impact there is to having or eradicating mosquitos. So let's do nothing.
jlward4th··on Writing code doesn't mix well with oration
I actually feel and do the exact opposite. I find code on slides to be boring. When I present I want to give the audience an experience like they will have. Live coding can do that well. But it certainly can go bad quick. Live coding on stage takes a TON of practice. Most presenters don't put in the prep so it comes out boring and fail-prone.

Probably the most important thing I've learned in 10 years of tech presentations is that every person in the audience learns in a different way and wants something different. You can't please everyone no matter what you do.

jlward4th··on LastPass Security Notice
The difference is that a password manager must be able to decrypt a password in order for it to be used, while ideally websites only store one-way hashed passwords which if stolen aren't always useful at gaining access to other sites.
jlward4th··on Migrating from Heroku to AWS using Docker
A year into this I'd love to hear a cost benefit analysis including infrastructure & ops cost, uptime, disaster recovery, security management (key rotation, heartbleed-like threat mitigation, etc), and overall developer happiness.
jlward4th··on The thing I hate about HTML (2010)
The thing I hate about bikeshedding
jlward4th··on Dropwizard 0.8.0: Java framework for ops-friendly, high-performance web services
The reloading part of Play doesn't use bytecode manipulation, it simply creates a new classloader with the newly compiled stuff and then uses the new classloader on subsequent requests. There are other pieces of Play 1 & 2 that do bytecode manipulation. In Play 2 this is pretty minimal when using Java / EBean.
jlward4th··on DMCA (Copyright) Complaint to Google
I'm also curious about this. If there is no downside of filing a false DMCA complaint then what prevents someone from causing the receiver a ton of unnecessary work?
jlward4th··on Stack Exchange Raises $40M Led by A16Z to Boost Its Programmer Forums
So what does that value each reputation point at?
jlward4th··on Java Doesn’t Suck
Good point. I should have put more details in there. I prefer static typing with good type inference because it allows me to have a compiler validate a lot of my code pre-runtime. Otherwise I'm left with tests and actually running all of the code to do that validation. The value of this for large code bases has been worth the tradeoffs in my experience. But since this is one of the most debated things in programming I don't expect to sway anyone. I'm happy to leave this as an item of "it depends" / personal preference.
jlward4th··on Java Doesn’t Suck
Most platforms have pretty fragmented build tooling. I think an exception might be Go because it has the build tool built into the platform.
jlward4th··on Java Doesn’t Suck
It definitely depends on what your needs are. There are tradeoffs on both sides.
jlward4th··on Java Doesn’t Suck
Definitely. Which is why I labelled that section as my opinions. :)
jlward4th··on Bézier Clock
Doesn't work unless cookies / local storage is enabled:

Uncaught SecurityError: Failed to read the 'localStorage' property from 'Window': Access is denied for this document. processing.js:9503

Not sure why processing.js needs local storage to work.

Page 1 of 2Next →