Recent submissions

Comment · 1 year ago
OMG, it's just a 'sheepsfoot' blade shape (as TFA mentions, but doesn't emphasize enough, IMO). That's the kind of thing you would have seen in hardware store knife displays, or scouting manuals, when I was a kid. It IS a good shape for cutting hand-held fruit. Or for cutting round-ish objects NEAR the EDGE of a hard surface (like a cutting board). But it is a bad shape for cutting meat or hard vegetables on a plate. You want a decently curved blade for that latter use. Both for ergonomics, and to keep your fingers & wrist ABOVE the surface of the plate or raised rim. This is not rocket surgery...

As mentioned in TFA: "Beyond form, there is function: Both Rich and Blease say their French knives keep their edge longer than other table knives, meaning they require far less frequent sharpening. Rich says he has replaced a few sets of steak knives, while his Lannier knives have been in action since 2018."

That's it. It's a cost-saving play by the restaurant (sharpening is time-consuming if your staff does it manually; and increasingly expensive if you out-source it to a sharpening service).

The stuff about the 'form', and the artisanal knife production is mostly PR for the restaurant.

Though I've heard of that knife-maker; and positive things about them. And the Thiers region is historically a major area for edged tools.

==== FWIW: I'm not a Chef; but I have a nephew who is; and I discuss restaurant knives and sharpening with him. But, more usefully, I'm a woodworker, and I have whole books just on sharpening, and tools from Thiers. Again, this is not rocket surgery, but hopefully one or two readers will be today's "lucky 10,000"!

==== ETA: grammar fix.

Comment · 2 years ago
Well, I’m much closer, at 66, to having to deal with the dreams and realities of retirement, than the (much?) younger author of TFA is. All that follows, BTW, is from a USA-centric perspective. (Immodest request: kindly refrain from saying how much better retirement and/or old-age is, in your country-such comparisons are largely unproductive; yet annoyingly tedious.)

I’m still working full time as a Software Developer and systems analyst, and largely by my own choice. Though I admit my lifestyle would be curtailed a bit (or maybe a LOT, if I live long enough!) if I had to live off my current savings plus whatever level of social security I’d be entitled to.

I’m still healthy enough to do the work, but I definitely feel like I don’t have the energy level and stamina that I used to. Nor as much motivation to focus on the job and my career.

Those last two challenges were most apparent during my previous two jobs, which were at software or hardware start-ups. I simply don’t want to deal with that level of stress and time pressure anymore, regardless of whether or not I can work at that pace. (Which is increasingly doubtful, admittedly.)

Currently I’m working at a sort of ‘biotech startup’ except we’re embedded inside a giant pharma company. And the work pace is wonderfully relaxed (and low-stress), compared to my previous employment (in high-tech startups). From my current viewpoint, and career needs, it’s a good match. I get a solid salary (+ bonus and stock), but (unlike software/internet/AI startups): a PHENOMENAL benefits plan. Though not FAANG money; but, then again, I never made that kind of money when I worked for Internet startup companies, so…

The good news, for my current career, is that I’m still mentally sharp enough to have, say, an in depth discussion of the differences between React, Vue, and other UI frameworks. And I’m teaching myself the finer points of TypeScript, as well as applying it on the job. The bad news, is that I’m having a serious of health issues. Nothing catastrophic so far; but gradually increasing in significance or frequency. At this point I feel like it’s a race between when my body gives out, or when I simply lose interest in writing code, and can convince myself that I’ve got enough savings to retire on.

Assuming that I can retire in reasonably OK health (if possible, in 3-4 years, around age 70, when I’d max-out social security benefits), I’m thinking that I have a low boredom threshold, and will want something to keep me engaged (and to help me maintain a healthy regular schedule). I’m not sure what that is yet. Maybe something just for fun (for example, I like to do woodworking)? Maybe something part-time, or freelance; but enough income to make my retirement less financially worrisome)? I’ve thought of: substitute teaching; being a teacher’s assistant (both at secondary education level; college adjunct faculty; sound or TV production; or maybe trying to sell some of my woodworking (which would make it a much less fun hobby, sadly)? Possibly an (off-season) estate caretaker gig?

I’d love to hear from others here, on HN, who are retired (or about to) and have: experience reports, cavests, or tips to convey. Or constructive feedback on my own retirement ideas…

Comment · 2 years ago
Comment · 2 years ago
Anecdotal, but I've had multiple Physicians (Urologists, specifically) recommend Mate as an alternative to Coffee and Tea. Particularly for people who find that Coffee or Tea causes them excessive urination and/or poor sleep quality; or who want to reduce the amount of acid in their diet. Though, as a reminder, Mate does also have caffiene, which can cause excessive urination and/sleep problems all by itself, even in pure (i.e., pill) form...

FWIW, as a long-time resident in the north-east USA, I've seen mate increasingly available in large grocery stores (super markets); though not consistently. And often it's the pre-mixed 'canned mate' form -- whatever that stuff is; I've never tried it. But Mate is typically also available in ground leaf/powder form, in tea bags. And sometimes in bulk form. That's what I purchase.

Sadly, I've rarely encountered Mate in restaurants in the USA, even in ones which advertise a selection of high-quality teas. At best, I've seen it in independent tea rooms and coffee bars. No, NOT in StarPhucks--yucks: coffee so bitter--at least not any of the ones near me.

After trying several of the brands of Mate that my local grocery store carried, I (happily) settled on the products from the Mate Factor company, from Asheville, NC. (I have no connection with them, other than as a very satisfied customer.) I particularly like their 'Mocha Mint' flavor, hot, either by itself, or slighly sweetened. (Though I can taste the mint note, most definitely; the mocha part is: ehh?) I think the Chai flavor is also good, but may be more of an acquired taste. The Hibiscus Lime is also yummy (IMO); but may not be a good choice for those who gave up coffee or tea for mate on acidity grounds (that's not medical advice, and I'm not your doctor).

https://matefactor.com/collections/yerba-mate

EDIT: typo fixes

Comment · 3 years ago
May I take advantage of your (presumed) typo, to henceforth refer to myself as a JavaScript Devil?

That's good enough for a business card/avatar tag/equivalent, IMO--yeah, I love it!

Comment · 3 years ago
I'm going to attempt to give some fact- & data- based answers, as there seems to be too much ideological axe-grinding in (many of) the existing responses (as is, unfortunately typical on HN it seems, when discussing Front End Development). Even if my attempt seems...boring? (And sorry for the length; hopefully it makes up for that a bit in quality...?)

HN: "Why did Frontend development explode in complexity?"

Answers:

0) It's not ONE thing--it's a combination for forces/trends/factors...

1) The underlying technologies have become more complex (at least CSS and JavaScript have, but much less so w.r.t. HTML). For example: Flex layout, Grid layout, calc(), variables, etc., in CSS. Async/await, destructuring assignment, import(), optional chaining, spread operator, yield, ...more in JavaScript.

2) Customers and Users 'see' something that looks complex (whether inherently or accidentally), using Web technologies, so they are increasingly conditioned to expect that any application (regardless of complexity) can be build/delivered using Web technologies. A few examples, off the top of my head: https://www.figma.com/ https://docs.google.com/ https://www.onshape.com/en/

3) HTML is--egregiously--impoverished! Quick, when was that last time you saw a non-trivial LOB application (or even most CRUD applications) that did NOT need some sort of data-grid style presentation? Well, luckily we have the HTML5 data grid control for that...oh wait, F** me! And then there's less common needs, like a 'tree control'. Or more common needs like: a robust dialog control (with proper focus mgmt., etc.). To PROPERLY implement (documented, rigorously tested, styleable, i18n support, accessibility support, DOM attributess, JS API exposure, and on and on) just one of those is weeks, even months of work. Sure, if you're only creating something for your own project, you can take short-cuts. But how much effort--and complexity--has been foisted, collectively, on Web application Developers, because the BROWSERS don't have a complete control set??? Arguably, the HTML control set is not much richer (except in styling) than what one could do on a 327X terminal; which is 1960s-vintage technology!

HN "Follow up question : Is that complexity necessary or artificially inflated?"

3) Short answer: YES.

Long answer: as the technologies mature (whether the built-in troika of HTML/CSS/JS; or the add-on stacks), and as Developers become more experienced at delivering applications with 'Web stacks', what I've experienced is that some of the accidental complexity is decreasing. But certainly FOMO and RDD, and similar self-serving imperatives are a factor in having artificial complexity. For example now that 'legacy' browsers are no longer a concern/constraint for many projects, the complexity of Babel, and Webpack are often no longer needed. Or, at worst, can be replaced by more: modern, simpler, and generally performant tools.

Example: https://vitejs.dev/guide/why.html

Also consider the madness which is the global namespace + cascade approach of CSS to selecting where/how styles get applied. There are (? were) benefits to this approach when CSS was exclusively being used for a relatively small number of styles that needed to be applied, consistently, to a large number of pages (i.e., via a rel link to a SHARED stylesheet). But those days are LONG gone! There have been numerous attempts to address that madness, traditionally via naming conventions, for example: https://en.bem.info/methodology/naming-convention/ https://www.keycdn.com/blog/oocss

But those approches are (IMO) tedious; and experience has shown they are not scalable, on multiple axes (application complexity, project longevity, team size, experience level diversity).

So Developers added tooling, such as SaSS, to attempt to overcome the weaknesses of CSS for large/complex projects. That's been at least a partial success. BUT, at the cost of additional complexity in the tooling and build chain. Maybe even having to have an additional language run-time for some tooling like that!

Just having two 'newish' features of CSS: variables, and the calc() operator can potentially reduce a lot of the traditional usage of things like SaSS. In some cases, the need for tools like that goes away completely! That's a win, for reducing artifical complexity.

Another example is the strict scoping of style selectors in Vue's single file components:

https://vuejs.org/api/sfc-css-features.html#scoped-css

Just that one feature alone, completely eliminates the traditional CSS madness, but without the weakness of the conventions (like BEM and O-OCSS), and with minimal (and pre-configured/included) tooling.

CLOSING THOUGHTS: state management is still very complex; at least for non-trivial, and at least moderately interactive applications. In my experience (and I was designing, and implementing, complex GUIs _long_ before the Web was a thing), at least some of that state management is necessary (inherent), for those non-trivial & interaqctive applications. The best we can do is to research and investigate, and try-out various approaches to minimizing the _accidental_ complexity that our state management approach/library/etc. adds to the inherent complexity.

I'm somewhat adverse to making recommndations on specific technologies, but I'd suggest that Developers who are contemplating a Web applicatiion with demanding state managment needs take a look at the following state managment library:

https://tanstack.com/query/v4/docs/react/overview

Comment: it addresses a LOT of the pain points that many Web Developers/Projects encounter. Moreover, I've had some very positive experience with the predecessor project to this one (i.e., React Query). N.B. If you're going to be using: Vue, Svelte, or Solid.js (i.e., NOT React), then make sure to click on the drop-down menu in the UL corner of that page!

Comment · 4 years ago
According to their compatability section (see: https://ruffle.rs/ then scroll down), it looks like, after years of work, that they're only up to supporting 10% of the AS3 language, and only 5% of the AS3-based API. Yeah, I don't think I'm going to be regretting all those expensive Flex development books that I recycled a while back.

Flash/Flex: it's not coming back, just let it fade away?

Comment · 4 years ago
You might find the following experiential program of interest:

https://www.bentley.edu/centers/ux-education

Or something more academic:

https://www.bentley.edu/academics/graduate-programs/masters-...

https://www.hcii.cmu.edu/

To answer your specific question re: "career prospects/lifestyle of UXR"; I used to do that work full-time, and even founded a consulting business around that. FWIW, I also chaired one of the largest local chapters of the relevant ACM special interest group (SIGCHI). However, I don't work in that field anymore, by choice. And I'm somewhat pessimistic about it, even though I still think it is a critical discipline. My reasons for leaving are:

-- Smaller companies can only afford one person, so they typically hire someone with an art school background; and expect that person to also be able to do UX work well. They are really distinct (but slightly overlapping) skill sets, so it is hard to find one person who is competent at both! Especially on a small company salary...

-- Personal to me: I don't have that art-school background, so that puts me out of contention for a lot of jobs.

-- Most 'tech' companies, from giants like Apple, to small start-ups don't seem to value high-quality UX work any more. At least not as much, and as generally, as was expected in the dot-com years. More typically, nowadays, they seem more interested in visual appeal, and being 'on trend'.

-- I've also heard that UX is not really important because new users are 'digital natives'.

-- I can make a LOT more money, and find more jobs, slinging web front-end code (Vue/React/JS/TS/etc.), than I can doing UX work.

Comment · 4 years ago
I'm going to have to say that I'm generally, but only _partially_ in agreement with your list of examples. When talking about "best designs", I would definitely (but respectfully) disagree with the inclusion of StackOverflow, and GitHub. Specifically:

StackOverflow

     Issues: mind-boggling bad layout (poor visual hierarchy, no clear organizing principle); inconsistent typography; too many fonts; weak affordances for useful functionality (filtering/sorting replies); hard to tell obsolete or ancient replies from newer ones
GitHub

     Issues: quasi-random screen layout; hard-to-discover functionality; mystery-meat navigation; low-level behavior/affordance inconsistencies.  (Editorial aside: this looks like the side-effect--or result(!), of a slavish application of an agile feature development model to the UI design of an application.)
Comment · 4 years ago
I concur with the suggestion elsewhere on this page to try ToastMasters (though I think you should really try to commit to at least the introductory sequence, to get good value out of it).

I also concur with the advice that dealing with social interactions is like muscle training: you need to do it repeatedly, and semi-regularly. And also, yes, it may be a little painful at first; and may feel very artificial--that's OK. A good place to practice: in a grocery store line, with whomever is behind you; and possibly with the checker, if they don't look stressed already.

I didn't see MeetUps mentioned already, but I've found them great. That's because they give the participants something to do/think about/focus on; when the conversation might drag, or otherwise be awkward. Do note that going to MeetUps with, ahem, possibly an unusually high population of introverts might NOT be a great idea. In other words, don't expect to practice your social skills so much at, say, a 'New Features in TypeScript' meetup; but one devoted to, say, fresh-water canoeing might be better (yes that's nearly stereotyping, but roll with it, please...).

Lastly, a great way to socialize, in a low-stress environment, is contra-dancing (https://en.wikipedia.org/wiki/Contra_dance). If you're not familiar, it's a dance form that is VERY approachable for the most un-coordinated among us. And live music, with just a nominal cover charge, typically. BTW, they usually have a mini-class at the beginning of each dance. But there are only about a dozen moves, and most of them are pretty basic (especially if you've done any square dancing or ballroom dancing before--but contra dancing is easier to learn). Typically there's a mid-dance break, which is a great time to practice socializing. Also, people usually change partners after each individual dance, so you get to meet lots of folks. (But don't expect to take anyone home that night--it's the _opposite_ of a 'meat market'; and you will not be welcomed back if you're too aggresive...) There are dances in pretty much every state in the USA, and some outside the USA; though there are the most in the North East USA. Caveat: most dances were shut down completely due to COVID-19 and are just starting up again.

Comment · 4 years ago
'useSyncExternalStore()' -- Gack!

Now...that "little" it's-not-a-framework-it's-a-library whose scope is supposed to be confined to just the "view" part of MVC (by which I mean: "React") is inserting it's tentacles (along with a quirky architecture and proven to be error-prone coding patterns, cough, hooks) into the _model_. And it's already corrupted (at least partially) the "controller" part of MVC through React's synthetic events. But hey, at least React doesn't have one of those nasty DSLs, like those Web application libraries/frameworks that use a simple templating syntax on top of plain HTML. Oh wait, JSX is a . . . DSL, and a pretty nasty one at that, given that it's ever-confusing as where JavaScript syntax is legal vs. where HTML is legal; and, oh yeah, the bracketing rules fight each other all day long. But hey, what do you expect when you combine the careful syntax design of JavaScript with the terseness and simplicity of, umm, XML?

So now React's about to ship version 18, which provides functionality which is _roughly comparable_ to version, ummmm, _3_ of Vue.js??? Well, let's see, the React folks have _already, in just a few years_ deprecated (as best I remember): Class-based components, Mix-Ins, Higher-Order Components (HOCs) . . . what's next--let's deprecate hooks?, in favor of, oh I don't know, . . . .sheesh!

Please just STOP now. Wind up the company and give the money back to the investors. (Yes, I know that React is Meta-sponsored FOSS; that last comment was just pure snark...)

On a personal note, I'd like to rebut a comment made elsewhere on this page by '0des': "The JS ecosystem skews younger, not in age, but in years programming." As a counter point, I've been doing Web application development since the early 2000s. Yes, I've worked with Web app. libraries and frameworks that many Front End Developers have not used, or maybe even heard of. Backbone, sure. How about GWT? Or maybe ES4, by which I mean Adobe Flex? How about TIBCO General Interface?

Have you heard of Vitamin C? Trick question--it's not a Web view/app library or even a GUI library--it's a TUI library from the late 1980s/early 1990. Which is to say, I shipped my first front-end code in 1984. And even though I also do full-stack coding, and UX stuff, most of my career has been in front-end coding, both desktop applications AND web applications. Which is to say, at least anecdotally (and possibly egotistically), that I think that I have a pretty well-informed opinions on what makes a good front-end framework.

React impresses me not-at-all; except in a: look-at-me-I'm-so-clever way--now new-and-improved--with extra _functional_ goodness(TM). Conversely, I've scaled Vue.js and Flex applications with so little stress (but with tremendous productivity) that I could laser-focus on the feature set, and on delivering a top-notch user experience.

I need a Web application framework (or at least a View/Rendering mgmt. library) that has these things: - Strong support for UI componentization - CSS isolation - Clean, orthogonal, basic abstractions for change handling and local state management - Tractable to scale - M, V, and logic aspects are (easy to) decouple

Also very useful: - One-way data binding - Robust, but low-ceremony approach to centralized state management - Flexible, but type-safe way to marshall/un-marshall data going out/coming in

I'm open to assessing other/new libraries, but the last five years of my career have almost wholly involved coding with Vue.js or React. HOWEVER, I only learned React because I thought that the job market demanded it--not because I ever thought that it was a great library! I'm open to learning other/newer libraries, if they are promising enough, AND if if looks like there is job market demand for them. But the previous version of Vue.js already gave me all five of the needs that I mentioned, above; plus one-way and pseudo two-way data binding. So all I need is Vuex5/Pinia for state management (but I'd be willing to also look at something like a Vue-specific alternative to Tanner's React Query), and there is an increasing wealth of solutions for data marshalling with or without GraphQL.

So, bottom line, in my current job search I am taking a hard line: if React is required, then I'm out. And if you're already using Vue, or are at least open to modernizing your current front-end coding approeach, then I'm interested.

Comment · 5 years ago
Not to be harsh, or dis-respectful, but there's an unfortunate amount of incorrect, or obsolete, information in the comments on this article. Let me see if I can do better...

-- Full disclosure: I used to (relatively recently) work for a vendor of 3D-printing technology.

It is important to consider the full 'volume' range of manufacturing, when evaluating a particular process or technology. Some will be good for making ONE part; and some for a million+ parts, and some in the middle. It's also important to consider the intended usage: for example, prototypes and military and medical parts may not be cost-sensitive, but, say toys, or consumer electronics are the opposite. Speed of manufacture is a key cost driver, especially in high labor-cost countries. Raw material wastage, and cost of energy can also be key cost drivers in manufacturing.

With regards to 3D-printing (more formally known as: additive manufacturing), I have to admit that I _used to_ be a skeptic, too. I can't tell you the number of: toys, action figures, souveniers, etc. that I saw printed from low-end, plastic 3D printers--and they just struck me as 'junk'. And even a lot of the industrial parts that I saw from middle-tier, plastic 3D printers were...unimpressive. I few years ago, I even thought that I was detecting a 'backlash' against 3D printing, at least at the hobbyiest level. And it is true that there has been some consolidation of vendors of low-end/hobbiest 3D printers.

But, there's also been a gradual, and now accelerating maturity in AM, and also an increasing diversity in approaches, and in uses. In particular, most people only think about 3D printing in plastic. But metal AM, and also directional-composite (e.g., oriented carbon-fiber) printing is really coming along.

In particular, AM lets us create parts that have voids (of controlled size/shape) throughout the part. That may not sound like a big deal, until you think about weight-sensitive transportation usage. If you can get 20-30% of the normal weight out of a part, that's huge for cars; and game-changing for aerospace. Here's one case-study, where they're claiming a savings of 3,180 kg of fuel, per-year, PER-PLANE: https://www.autodesk.com/customer-stories/airbus

I noticed that lots of commentors are discussing how much 'better' injection molding is than 3D printing in plastic. Sure, for anything above prototyping quantities, that's probably true. But, also think about the manufacture of the _molds_ for those machines. What if you could cut your mold production time by 30%, and your mold production cost by 90%? Here's a case study on that: https://www.desktopmetal.com/resources/builtrite-3d-printed-...

What if 3D printing--including in METAL--wasn't a S-L-O-W process. Here's some folks that can do metal AM at very high speed: https://www.digitalalloys.com/ The caveat there is that the resulting part has pretty crude tolerances, so a finish pass (with conventional CNC machining) may be needed. But there's some higher-quality, and pretty high-volume, metal AM processes coming along, for example: https://www.desktopmetal.com/products/production and: https://www.exone.com/

Lastly, AM opens up some design space possibilities, that previously were either wickedly cost-prohibite, or were completely impossible to do. For example, the previously mentioned _molds_ for injection molding machines. Being able to carefully control the mold temperature is a key process parameter. With 3D printing, 'conformable' cooling channels can be designed-in to the mold. And these channels can basically be any geometry that is needed--looking like animal veins, for example, to give optimal cooling.

It's probably going to take a new generation of designers and mechanical engineers, before the full--and I use this word deliberately: disruptive--effects of AM are 'internalized', and used to their best potential. For example, here's a (software) CAD tool that produces 'organic' designs, and ones that would only be practical to manufacture with 3D printing: https://www.desktopmetal.com/products/software/live-parts/

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton