James Ward
jamesward.com · Personal blog · on HN since 2010
James Ward, a developer relations engineer, writes about Java, the JVM, Play Framework, web app deployment and security.
What HN saysHN commenters link it for practical JVM material, such as GraalVM native-image tips for running Java on a scratch container, and Play Framework posts.
21HN people shared it
5linked it in comments
30stories submitted
633story points
4 years agolast shared
2010people per year2026
Most-shared posts
- 1The Modern Java Platform – 2021 Edition2 people · 267 points · first shared 2021 · 253 comments on HN
- 2Java Doesn’t Suck2 people · 191 points · first shared 2014 · 205 comments on HN
- 3When you hear ‘Monad’, think ‘Chainable’ (2017)2 people · 24 points · first shared 2017 · 6 comments on HN
- 4Securing Single Page Apps and REST Services2 people · 8 points · first shared 2013 · 3 comments on HN
- 5Tutorial: Play Framework, JPA, JSON, jQuery, & Heroku1 people · 64 points · first shared 2011 · 7 comments on HN
- 6An Alternative to Required API Keys1 people · 30 points · first shared 2013 · 22 comments on HN
- 7Comparing Application Deployment: 2005 vs. 20151 people · 7 points · first shared 2015 · discussion on HN
- 8Amf.js – A Pure JavaScript AMF Implementation1 people · 6 points · first shared 2010 · discussion on HN
- 9Introducing Mixing Loom – Runtime ActionScript Bytecode Modification1 people · 3 points · first shared 2011 · discussion on HN
- 10Refactoring to Microservices (2015)1 people · 3 points · first shared 2015 · discussion on HN
- 11Interactive load/render comparison for 10 technologies/formats (GWT, Ajax, etc)1 people · 3 points · first shared 2011 · discussion on HN
- 12Introducing Gulp Launcher1 people · 3 points · first shared 2014 · discussion on HN
- 13Easing function fun1 people · 3 points · first shared 2011 · discussion on HN
- 14Play Framework 2 with Scala, Anorm, JSON, CoffeeScript, jQuery & Heroku1 people · 3 points · first shared 2012 · discussion on HN
- 15Architectural Evolution: From Middleware to The Cloud1 people · 3 points · first shared 2011 · discussion on HN
What HN people wrote when they linked it
EzGraphs · 2013-06-26
Most web development workflows emerged in an era of monolithic, server-side driven application development. Lots of server side code (as well as navigation logic and session state), relatively small amount of browser side code. In recent web app development, client side now has a larger proportion of the code and complexity. Developers tend to make incremental changes to their workflow rather than "starting from scratch" seem to miss the shift that has taken place.
One of the best examples of an efficient workflow (at least in theory) that I have seen is the Play framework, along with a browser plugin that causes the browser to refresh every time source code is saved (http://www.jamesward.com/2013/05/15/auto-refresh-for-play-framework-ap…
dredmorbius · 2012-08-15
Exactly how precious are those CPU cycles? I mean, really. Can you put a dollar figure on them?
And then contrast that with the dollar figure for consultant / employee / remote hands time to figure out WTF went wrong?
There are numerous systems for managing services: monit is the best known, mon and several proprietary systems also exist. Nagios can tell you if the service is running or not (though it doesn't handle the start/stop logic).
These are small details and extensions on top of the existing SysV init foundation.
Ubuntu's boot time is already down to 8.6 seconds -- a restore from suspend is barely less than that (and restore from disk is considerably longer), though both restores preserve user state. You know, what applications / files you had open, and what was in them when you left off, positions of windows on your desktop. All that jazz.
http://www.jamesward.com/2010/09/08/ubuntu-10-10-boots-in-8-6-seconds/
The socket management is kind of nifty, but doesn't add a whole lot that xinetd didn't already offer (systemd does allow multi-socket services and d-bus-initiated services). I'm not convinced these couldn't be hacked into xinetd while preserving the simplicity and stability of init.
My desktop state (and its preservation) is worth a lot more than fast boot.
Yes. I've heard of inane gratuitous questions. As I said: if you're forcing average users to reboot with any frequency, you're Doing It Wrong.
arafalov · 2021-04-22
For JVM, you have to bend a bit backwards and use still-evolving toolchain, but it is actually possible to create native-image of a Java program that will run on top of SCRATCH:
https://jamesward.com/2020/05/07/graalvm-native-image-tips-tricks/
lanna · 2012-09-15
Have a look at Play! and Scala: http://www.jamesward.com/category/play-framework/
jlward4th · 2012-07-02
I built a little JS library that just does that part: http://www.jamesward.com/2012/06/15/dynamically-rendering-github-files