HNHacker News
TopNewBestAskShowJobs

jeffreportmill1

720 karma · joined July 13, 2016

I am a former Apple and NeXT software engineer, working for my own developer tools and educational software and consulting company for 25 years. I love to hear from other software developers and technology enthusiasts, feel free to contact me.

Jeff Martin jeff@reportmill.com http://reportmill.com

submissionscomments
jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
SnapCode is actually using SnapKit (https://github.com/reportmill/SnapKit) which can run on either WebAPI/DOM (in browser) or Swing (desktop). In the browser this helps slim the download and improve performance by using more browser native code.

For pricing, SnapCode is free for individual use and will remain so. Perhaps there will be funding opportunities from large organizations or for embedding use cases to help provide for the continued health of the product and community.

jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
I found and fixed the major FireFox issue and put out the update. There is still another issue I'm tracking down, but it's much better.
jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
Thanks! SnapCode is actually 100% client based right now. It downloads the jars and the CheerpJ JVM browser runtime and runs on the local machine. Files are stored in the browser index-db.

There is a preview feature for using drop box and I'm looking into using local file system APIs, but its not really there yet.

jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
Oh right! I forgot to update that link, thanks for the report. I've updated it now.
jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
I think this is some kind of CDN caching issue - that reference was removed from the launch file last week (but I've gotten a couple other reports). How did you work around it?
jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
Yes, every window is a canvas. All painting is done with an adapter so it uses DOM painting in the browser and Java Swing Graphics2D painting on the desktop. It's pretty much pixel perfect identical though.
jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
The browser certainly has unparalleled deployment advantages. Though for sustained use, I would recommend going desktop (there's a download link on the page). Java still does good desktop. :-)

Or maybe using new "Web Apps" feature like MacOS has to turn web app into desktop.

jeffreportmill1··on Show HN: SnapCode – a real Java IDE in the browser
My apologies to FireFox users - it quickly hits an exception. Will fix today if I can, but still fine on Chrome and Safari in the meantime.
jeffreportmill1··on CheerpJ 3.0: A WebAssembly JVM to run real-world applications in the browser
CheerpJ uses http byte range requests which reduces the amount of necessary downloads. My full featured Java app downloads < 20 mb with CJ, which is about the same as hitting the front page of NYTimes.com or spending 20 seconds on YouTube.
jeffreportmill1··on CheerpJ 3.0: A WebAssembly JVM to run real-world applications in the browser
Congratulations on a great product! I've played with it quite a bit and we finally have a great version of Java in the browser!
jeffreportmill1··on One-Pedal Driving Explained
I have a theory that one-pedal driving also improves traffic conditions by reducing the over correction inherent to two pedals. In traffic we hit the accelerator when space opens up in front of us, then switch quickly to brakes when the brake lights in front go on. The switch lessens our ability for fine control and it's exacerbated by the inertia of deceleration, so we almost always over correct. This has a cumulative effect in following cars.

One pedal driving allows us fine motor control without a drastic switch. The regenerative braking also encourages us to not over-brake (you grow to love the idea that you are recapturing energy and avoiding wear on the pads).

jeffreportmill1··on Image Golf
I got 79% with: a red BMW in front of a field of trees under a starry sky
jeffreportmill1··on A Leaked Tesla Report Shows the Cybertruck Had Basic Design Flaws
I have been a huge Tesla fan - we own 2 (model 3 and Y). I think Tesla perfectly executed the barn raising of a new EV car company: (1) Build a premium roadster (2) Build a premium sedan (3) Build a mid range sedan. Each step allowed them to develop expertise and attract the right customers with the right expectations at the right $$$ amount. The design of each car has been elegant: simple, but attractive.

The Cybertruck was a huge misstep. I imagine truck people are mostly practical - so a design out of blade runner not only creates unnecessary engineering challenges, but misses most of the market.

When I look at all the Rivian's around town, I think, man, that is the truck that I expected Tesla to build. The Cybertruck is clearly at vanity project at way too early a point in Tesla's history. An embodiment of Elon's departure from reality.

Tesla - please drop the Cybertruck (and the robots, too)! And though I am no fan of mergers - maybe you should look into buying Rivian.

jeffreportmill1··on Infinite Mac: Classic Macintosh system releases and software on a web browser
Wow, I didn't know about that one, but just watched a video. I wonder if it was inspired by the Mac game from the late 80s.
jeffreportmill1··on Infinite Mac: Classic Macintosh system releases and software on a web browser
I am so thankful for this project - for years I have been obsessed with a game I loved on my old Mac SE, but I couldn’t remember the name and only remembered that it was like Asteroids, but in a maze.

I found it on several of the releases at this site - it’s called Continuum. So fun to get to play it again after all this time!

jeffreportmill1··on A Biography of the Pixel (2021)
I highly recommend this book as well. I am always on the lookout for technical books that have a good mix of history. One of my favorite examples is the "Disappearing Spoon", which is an engaging exploration of chemistry with stories. Biography of the Pixel is right up there with that.
jeffreportmill1··on Geoffrey Hinton leaves Google and warns of danger ahead
I am not against the general AI hysteria, but I don't think we should let it jump the line. There is plenty else that will likely get us first: the internal combustion engine, micro plastics, forever chemicals, nuclear weapons, social media, radical-media, inequality (radical capitalism), etc.

Hinton's first threat sounds like an extension of social media. Motivated bad actors already create quality fake stories and images and spread them far and wide. Our growing skepticism is out-pacing the technology, however, our growing polarization and confirmation bias has created more people that want to be fooled. But let's hold Facebook to account first.

Hinton's second threat sounds like inequality. It's not so bad when technology eliminates jobs, but if the income becomes further concentrated in the hands of the few at the top, we accelerate political corruption resulting in more yachts, more homelessness and fewer eager young minds that can afford the education needed to reach their potential.

Hinton's third threat is killer robots. But robots lack motivation, whereas a motivated bad actor could wire an explosive drone to easily target a gps location today. A more likely scenario would be an AI 'scammer robot' - but again we have to worry more about a motivated person than an app. And we do - and an entire industry has developed to address it.

I think Hinton's announcement is more like Eisenhower's farewell address, warning us against the political industrial complex (another threat still trying to get us). Perhaps the headline should have read instead: After a long and distinguished career, tired 75 year old man says, "Take this job and shove it".

jeffreportmill1··on ‘Angry Birds’ company is about to be sold for $1B to Sega
Did they ever make things right with the creator of Box2D?

https://techcrunch.com/2011/02/28/creator-of-angry-birds-phy...

jeffreportmill1··on Cheerp 3.0: C++ compiler for the Web, now permissively licensed
Congratulations, looks like a great release! I'm a big fan of CheerpJ - these tools are making web development from other languages a reality.
jeffreportmill1··on Letter to Pixar President Ed Catmull [pdf] (2004)
Boy this is really apropos of Alvy's book "Biography of a Pixel" (which I loved), and Alvy does such a thorough job of documenting the contributions of so many people, flying in the face of our tendency to sweep the accomplishments of groups under the banner of one "hero" figure.

Go read the book - it expertly mixes fascinating anecdotes with technical details to achieve that rare accomplishment of keeping you totally entertained while secretly making you smarter.

jeffreportmill1··on Pencil ­– an open-source GUI prototyping tool
If this project is mostly JavaScript, why isn’t there a browser version?
jeffreportmill1··on Why do we stop exploring new music as we get older?
All I can say, is give it a watch. Funny and heartfelt writing, regularly featuring a song from a contemporary folk artist. I think Zach Braff got much of the credit, and took some of that sensibility to the big screen with Garden State.
jeffreportmill1··on Why do we stop exploring new music as we get older?
My theory is that it isn't just music - what people often prefer in most categories is the "familiar". When you're young, it's all new so we explore, but after a while we gravitate towards things that are like things we already know.

Having said that, what saved me from being stuck in the 80's was almost single-handedly Scrubs, the sitcom. Joshua Radin, Jon Mclaughlin, Colin Hay (re-introduction), Matt Nathanson. Wish I could find another source as good as that again.

jeffreportmill1··on Errors are not failures
I totally agree with you. Sometimes I think programming has ruined doing things in the real world - I’m spoiled by the idea that I can slap things together, then iterate to a refined result. But if you do that with anything else, like cooking or home improvement/maintenance, you just end up with a mess.
jeffreportmill1··on Ask HN: Tips for modern Java Swing development?
Wow - nice to hear and thanks for the compliment!

My contact info is in my HN profile - send me a note, maybe we should connect on LinkedIn.

jeffreportmill1··on Ask HN: Tips for modern Java Swing development?
I think the biggest flaw of Swing is that it didn’t provide or promote a standard ‘Controller’ class. I have seen tons of Swing code over the years that is a spaghetti code mess of UI creation, initialization, updating and responding.

So my big tip is to create a SwingController base class for any of your UI panes with the following methods:

  - JComponent createUI();
  - void initUI();
  - void resetUI();
  - void respondUI(Event anEvent);
Theres a bit more to it than that, since you want resetUI to update all of your components without triggering respondUI(). And you want all your components to be automatically configured to call respondUI() when there is user interaction.

I’ve written one of these before, but I don’t have access to a public version anymore. I do all my current UI dev in a UI kit built on top of Swing. But here is what I use there that solves this problem:

https://github.com/reportmill/SnapKit/blob/master/src/snap/v...

jeffreportmill1··on Show HN: Sierra, a DSL for building Java Swing applications
The only real problem with Swing is that there was never a version 2. If it had been separated from AWT, updated some of the APIs and given a modern look-and-feel, it would still be relevant today. JavaFX is nice, but it broke too many conventions.

And, of course, Oracle or OpenJDK (or someone) needed to invest in a browser port of the JVM, which is totally possible these days.

jeffreportmill1··on Show HN: Sierra, a DSL for building Java Swing applications
This is very nice! It is easy to get lost in most raw Swing code, but this seems to result in hierarchically defined code that keeps nested UI elements in context. I can almost visualize the resulting UI from the code.
jeffreportmill1··on What it’s like to have a social media detox
I just wish FaceBook was presented to me like HackerNews:

  - My Favorite Group is meeting next week at a local restaurant
  - My Neighbor is on yet another amazing trip with his perfect family
  - My old classmate found a preachy article that he wants to share
  - etc.
I crave the connection, but there is such a thin line between that and bragging. I love it at a party when I ask what someone has been up to and they have an interesting response. I would hate if that same person just walked up in my face and said, "I went to Aruba, a Paul McCartney Concert, and that new trendy restaurant in town". Then I also hate that I feel that way.

I could do a better job of self moderating if the presentation wasn't so intentionally in my face.

jeffreportmill1··on Ask HN: Do anyone get anxiety from following Hacker News?
This will seem unrelated, but I’ve often heard people complain about going to the gym: “I hate going to the gym because everyone else is so beautiful and I’m out of shape”. But distorts the reality that most people don’t go to the gym. And the people at the gym the most are the ones that mostly build their lives around it.

So following the HN community too closely can stir feelings of insecurity and inferiority and the imposter syndrome. And yeah, I feel it sometimes, too. :-)

← PreviousPage 2 of 5Next →