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

Often logging libraries allow you changing the logging level at runtime, without restarting or recompiling the application, as well as turning logs or off at runtime for different parts of the application. They let you organize logging levels so that when, for example, you turn the level to INFO in one part of the applications, all of the connected code also gets its own log level turned to INFO and you can define which parts of the application should change their log levels in sync. There's also performance considerations, often log libraries claim to implement tricks so that logging is supposed to be faster than naively writing strings to a file.


I've found a few of these companies in the Netherlands.


I know a guy who's Manager/CEO went to prison for fraud during his internship.


My impression is that in China it varies a lot by industry and location. Even in Shanghai, I've come across offices closing at 4PM with a 2 hours lunch break.


Expat in Singapore. 2 hour lunch break here in Singapore as well for me. And keep for most office work, people are just wasting time, taking care of other tasks at work, etc. I end up working much less than when I was in America, but my availability 'presence' is higher.


Singapore shares little culture with China


Docker images package the entire environment that an application needs to run, but to do that they contain precompiled software for a specific CPU architecture, so they can't help you jump across architectures. Not even a full VM allows that by itself, for running software for a different architecture you need emulation.


One issue is that your comment sounds a bit hyperbolic. For example, China criminalizes thought? It certainly does not criminalize thought as such.

About 'working together with our allies'... Some will argue the 'West' has developed a somewhat abusive relationship with a lot of the world over the last two hundred years. It's not surprising some would look favourably to a competitor, if only to take advantage of that competition to make a better deal for themselves.

Finally, if other parts of the world develop a more advanced IT industry instead of China, how does that preserve Western developers salaries? Are the Chinese uniquely inclined to work long hours for low salaries? Or are you implying that the 'West' would need to prevent nations under 'our sphere of influence' to develop an IT industry so developers in the 'West' can continue to receive their current salaries?


I believe an example of where binding differs from assignment is if you define a function which references a binding in the outer scope, the create a new binding with the same name in the outer scope, the value inside the function does not change: a = 1 f = fn -> a end f.() # returns 1 a = 2 f.() # still returns 1


I don’t know the context of Virginia Woolf’s comment, but in the case of fiction, I don’t think that a book about war is necessarily more important than one about facial hair grooming. Even in non-fiction, is a shallow and sensationalistic book about war necessarily ‘important’?


If you know nothing else about a book, it seems a pretty fair bet that one about war is more important than one about beards.

Let me put another way. You need to rebuild civilization from nothing. There's two books left from the pile of rubles and you can only save one before the whole thing collapses. One appears to be about war, the other teaches the best method to maintain the most handsome old school handlebar moustache.

The question is, are you serious about this civilization thing or are you just out of your mind?


Imagine a CSV parser written in Java. I can imagine quite well that it would rarely need updates, as CSV does not evolve and I find it reasonable to write such code with no external dependencies except the Java standard library, which almost never breaks backward compatibility.


CSV is a very bad example. Yes, it is easy to throw together a simple regex to parse simple RFC4180 CSV strings, but Excel is its own black box with a huge number of hacks.

For example, en-US excel will automagically parse TRUE and "TRUE" to be the logical value TRUE. The way to get Excel to see a literal string TRUE is to make a formula ="TRUE". Many CSV writers implement this hack specifically assuming files will be read back in Excel. So now your parser, if you're trying to process data like Excel, has to do the same.

So then you discover that this is actually localized! If you set your UI language to French (France), Excel will treat VRAI and FAUX as booleans while TRUE and FALSE are treated as literal strings.

What you thought was a simple CSV parser now has to handle localization as well. So that CSV parser library can roll its own dodgy localization support, use a tried and true solution, or just choose not to support the feature. Each choice has its own drawbacks


> Imagine a CSV parser written in Java. I can imagine quite well that it would rarely need updates, as CSV does not evolve

CSV, which isn't even a standard and the closest thing to a standard is a description of the breadth of different behaviors seen under the name at a particular point in time with some notes about their relative frequencies and respective practical issues, does, in fact, evolve.


Depending on your needs RFC 4180 might be your CSV standard.


What if you're working in a domain which does evolve? For example, every domain.


Alright, fair, but then again what if you're building something more complex, where CSV-parsing is just 1% of what it does? Do you implement every single non-standard library functionality you need?


Don’t you have to update the project source code at least a few times a year to add new versions of Java to the CI?


BuckleScript (now ReScript, I guess) can still compile standard OCaml syntax.


AFAIK it's a forked compiler and already a number of language versions behind the mainline one.


Yes but OCaml 4.06 is still OCaml.


AWS needs to separate one customer’s lambda executions from another’s. When you deploy Docker, isolation is guaranteed either because you do it on an underlying dedicated VM, or you give the Docker image to something like Fargate.


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

Search: