Hacker Newsnew | past | comments | ask | show | jobs | submit | mileza's commentslogin

I don't know if that's related to your question, but I've used XSLT templates with Apache FOP before to render PDF documents.


I think the 600$ price point was inflated with the Pi and the Arduino being used. Simply changing some parts for cheaper ones would have allowed to reduce the BOM cost and thus reduce the price. The author mentions this in his post.

Also seemingly not a lot of people paid 600$ for the sign, with a lot going for a lot cheaper than that.


That's a part of what the article dives into. For example the LED matrix hat they were using from Adafruit was probably the most expensive option they could have used at $25/unit, and the article gave examples of much cheaper (i.e. 10% of the cost) parts that would have done the exact same job with a little extra engineering time/effort. Replacing the Pi with an ESP32 would have saved money, but like the article mentions using a Pi wasn't entirely a bad idea considering the free marketing they got from the foundation.


I think you're missing the forest for the trees. It's one thing to store the lyrics in the file, but the entire UX around the use of those lyrics is pratically non-existent.

Storing the text is the easy part. Procuring files with lyrics baked in or adding lyrics to your pre-existing library is another. And so far, almost no music player supports them, their UI isn't necessarily optimized for displaying lyrics, and there is no widespread standard for their format.


> Note that since our technical discussion is a conversation. I don’t expect a perfect answer from anyone. If I hear some right keywords, I know that the candidate knows the concept, and I try to push them in the right direction.

You seemed to have missed the most important point in this interview. I agree with you that rote memorization is useless, but the goal here is to have a technical discussion on topics like mobile design, accessibility and SEO. And if you're not willing to have this kind of discussion you're doing the interviewer a favor by walking away.

You also don't need to know how to code those by heart, but you need to view at a glance what their use is if you ever need to diagnose an issue, even if it's generated by a framework, because a framework may not generate the proper code for you.


You missed the entire point of the article. The point is now to know whether you know those 10 lines by heart, it's whether you can have a discussion starting from just this.

Do you know why the document starts with a doctype declaration? What accessibility tags are and why they are important? What is OpenGraph and why SEO is important? What are CSS resets and why do we use them?

If you can take a guess you're already halfway there. If you can explain what you know about them you've aced it. It's not about knowing all of the meta tags or the OpenGraph attributes, it's whether you can have a discussion about mobile design, accessibility and SEO.


I’m responding to someone who claimed this is a good fizzbuzz test which is different than the point of the article.


The touchscreen is still there on my 2020 model. but I always use the roulette to navigate. It's a bit akward at times but it's much better than taking my eyes off the road to try and line up my finger on the touchpad. It's disabled in Android Auto mode, and probably in CarPlay but I never used it.

I too had problems with Android Auto when using my old phone, it constantly crashed. When I switched to a Pixel 4a in 2020 I no longer had any issues. It works like a charm.

So I suspect it could be your phone, or something related (the cable, the type of USB plug, etc.).


For me, I tried a Pixel 3 and a Oneplus 7 Pro, with two different cables, and the instability issues were the same. So it's not clear to me that the issue is outside of the head unit.


For the first 2 months of me owning my car (it's a 2021 mx5), I had to force close spotify immediately before plugging the phone into the car (It was like a 30 second window) or the car would refuse to output any audio. Without any change to the cable or the car, and with the same handset, the problem suddenly disappeared. The only thing I think of that could have fixed it is an over the air update for my phone.

Either way, it's branded "Android Auto". I'm going to blame Google for anything that doesn't work optimally. If they cared, they could certify their product.


Yup - the common element between my phones is the underlying Android software / Android Auto software.


I misread your previous comment has the problem originating _inside_ the headunit. Just wanted to clear that up since my response probably seemed pretty superfluous.


No, you read it right. I mean - clearly I don't know the origin. My Mazda OEM head unit was slow and unstable out of the box, and continued to be so when I installed Mazda AIO Tweaks (with Android Auto.)

Specifically running Android Auto became more unstable in March 2020, without being the head unit updated. In other words, probably the phone (Android Auto) was updated. Possibly in a way that was backwards compatible with OEM Android Auto, but not the AIO Tweaks version.

That's a long of saying, there's probably multiple potential sources of problems and failure; not clearly the hardware/software of the head unit, and not clearly the Android Auto software. But a bad combination of the two.

But it's all guesswork on my end! When I see others having the same issues with OEM Android Auto, it does make it seem more of a clear Android Auto software issue. (And we haven't really ruled out idiosyncrasies of the handsets and USB cables.)


There are plenty of websites that detect that I'm using an adblocker. It's mildly annoying, but then I get to decide if what I was about to read was worth it.

Most of the time it's journaldemontreal.com (and other Quebecor-related websites) that prevents me from reading their articles with my adblocker. Which is a blessing in a way, because it's basically a glorified tabloid with a lot of articles of dubious quality.

I'm on Firefox with both AdBlockPlus and uBlock Origin.


This kind of function overload is present everywhere in the Java collection framework (and probably other libraries). It is a performance optimization (variadic arguments in Java require creating an array), and variadiac overloads also exist (Map.of needs a list of Map.Entry for type safety) for creating collections of any size.

https://docs.oracle.com/en/java/javase/11/docs/api/java.base...


Can you elaborate on your reasons why it would be a bad thing?

I think the argument for this is mainly that this would be funded by taxes, so it would not need to rely on advertisements and exhibit the predatory behaviours that Facebook and other social media do.


I've seen this multiple times, and there seems to be a pattern emerging.

At first, people name the machines after the software they install on it. Then, when you get to about 4-5 machines, you start finding a "cute" naming convention (Constellations, Star Trek ships, mythological figures). As long as there is only a handful of machines, it's easier to remember which machine does what.

Then, as you start to scale up, between a few tens to a hundred, finding names gets harder, so you switch to a more standard naming conventions. Something that communicates the physical/logical location and the organizational unit, as well as an index for duplicates / replicas / redundant machines.

So I think it's fine to be clever as long as it's manageable. The moment it's going to start getting out of hand you can switch to a more scalable approach.


"Pets" vs "cattle" is the classic metaphor. When your pet is sick, you take care of it, when "mp-32h-12b" is down you take it out and shoot it.


yes, of course, we had a small legacy cluster where I named our 36-odd machines after star trek ships. Knowing full well that when we went to a "real datacenter with real racks", the names would be rack-number/slot-number. My big mistake was zero indexing the slots. Never again.


What? How can zero indexing be a mistake?


We had a guy zero index a stack of shared Colo racks in one of our DCs a decade ago.

I sent remote hands to pull a server for a customer that was done with their contract and another for failure not pay.

Got the wrong boxes, disconnected two customers, put the servers on the shelf and left for the weekend.

So I cut a ticket to the next remote hands guy and tell home to get the boxes back up and running and we'll deal with it Monday.

Cut another ticket to a third text Monday to pull the boxes. Yeah, you guessed it wrong boxes again. Same customers, what the fuck.

Have the boxes reracked and drive out there to do it myself. Count the servers, wrong label, do some digging around, 'OH'. Pull the right server. Loose two customers. Cut tickets for all racks to be relabeled starting from one.

People don't expect 0 index in the physical world. It's just too clever by half.


If you're the only person who works in the rack, no problem. I worked as a tech and wired up machines once upon a time, ran fiber to core infrastructure, was boots on the ground for any physical access to the rack that was required, etc. I would not be surprised to hear a story of someone counting from 1 from the back of the rack and unplugging machine "7" or something.


> If you're the only person who works in the rack, no problem.

It's still likely bad. Your brain is simply not wired to zero index physical objects.


Which makes sense, as there can't be "negative" objects, mostly.

Building floors are more ambiguous - there can be basement, ie "negative" floors. So, floors in continental Europe are generally indexed 0-based (basements ..., -2, -1, ground floor = 0, upper floors 1, 2, ...). A German friend of mine caused some confusion when she checked into her student dorm at a US college, and having being told that her room was on the first floor, asked whether there was an elevator, as she had heavy suitcases.


In French, the first floor is called "Rez-de-chaussée" and the uppers are what called "Etage". So it's actually 1 based.


But the etage above the Rez-de-chaussée is 1, correct? The Rez-de-chaussée then is 0. That is 0-based indexing.

  US  D  F
   3  2  2
   2  1  1
 __1__0__RdC
  B1 -1  je ne sais pas


There is no Etage 0. People will just confusingly look at you if you ever said that. And the "Je ne sais pas' is called "Sous-sol"


In a lot of elevators rez-de-chaussée is labelled 0. We just don't use that when communicating


You can have multiple basement levels, which get numbered again. 1er Sousl-sol, 2eme Sous-sol etc. The ground floor might not be explicitly labeled as zero but the number between "one up" and "one down" is still zero.


The racks I've worked with have the slots labelled already, starting from 1.


Confirmed. Cute doesn’t scale. At google, a building I was in had conference rooms named after craters on Mars. This didn’t work as well in practice as it sounded on paper.


Talk of naming conventions puts me in mind of https://youtu.be/y8OnoxKotPQ


we named our prototype chips after British nuclear test codenames and all machines used to be terminator characters :).


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: