HNHacker News
TopNewBestAskShowJobs

kovrik

603 karma · joined April 2, 2012

https://github.com/kovrik/
submissionscomments
kovrik··on Problem Solving and Clojure 1.9 with Rich Hickey
This.

I really love Clojure, but these days I'm still mostly a Java/Kotlin guy. Haven't seen any Clojure job or Clojure being used in production yet, unfortunately.

Sadly, that is a common fate for Lisp(-like) languages nowadays. People are scared of unusual syntax.

kovrik··on How I gained commit access to Homebrew in 30 minutes
But that's the thing: many people don't bother configuring it properly (or they don't know how?). So why risk it?
kovrik··on How I gained commit access to Homebrew in 30 minutes
I think that publicly exposing your build/deployment system is a very bad idea. It contains too much sensitive and valuable information (credentials, commits, commit author names, paths, hostnames, scripts etc.) and it is too hard to make it secure the right way.

Unfortunately, many people do that. For example, here in New Zealand there is a new startup Onzo (bike sharing). When they launched, I tried to google about them (just out of curiosity). And in 1 minute I found their Jenkins server exposed to everyone as well. I could see how their build process works, who commits what etc. I decided to try to login using simple credentials (something like admin:password) and it didn't work. But there was a Register button. "Why not?" I thought and clicked it and created my own account. And voila, it gave admin permissions by default - I could delete their projects, change variables etc. Emailed them about that.

Moral: never expose your build/deployment systems. If you really want to expose some parts (for whatever reason), then use/write client/UI that has no permissions. 'Build Status' badge is a good example -- it exposes build status info, but doesn't show too much and doesn't give any permissions whatsoever.

kovrik··on How to explain infinity to kids
I think that describing infinity as an infinite process is bad because that way we are basically saying that this infinite process and infinity is the same thing!

I love ops explanation because it separates infinity (as a number) and infinite process (counting).

kovrik··on How to explain infinity to kids
Agree. Scientists love confusing and weird names.

For me, back in school days (or was it university?) it was a revelation when I came across quaternions. It suddenly clicked. I finally understood that there was nothing special about complex numbers (despite their special names and weird look). It was just an extension and a very intuitive one!

I finally understood that real numbers are the same thing: tuples. They just happen to have exactly one element, hence we omit parens and everything else and just write that element (number)! Complex numbers have 2 elements (real and imaginary). Quaternions - four. And so on.

kovrik··on How to explain infinity to kids
That's an infinite process (which is an awkward way to describe anything), but not infinity. You'll get more and more natural numbers, but will never actually get infinity.

I love ops explanation because it gives more natural picture: there are _other_ numbers beyond naturals. Then you tell kids there are also negative numbers (integers) and rational numbers and real and complex and so on. I believe that way it is much easier to grasp that very abstract (but fundamental) idea of 'number'. That it is not just 1,2,3...

Because otherwise, we get people thinking "Complex numbers do not exist, that is just a silly thing used by mathematicians that has nothing to do with the real world, it is useless."

kovrik··on Rackjure
Yep. I'd say persistent collections and (lazy) sequences. And great concurrency stuff (agents, atoms etc.)
kovrik··on Rackjure
Shameless plug: I'm writing similar thing as a hobby sandbox project: https://github.com/kovrik/scheme-in-kotlin

It started as a Scheme R5RS implementation in Java, then I translated everything to Kotlin. Finally, decided to make it a hybrid (abomination?) of Scheme and Racket and Clojure.

Still in development, don't know how to implement macros properly. Also, it's only an interpreter for now, there is no compiler (for the same reason: don't know yet how to write a compiler for Kotlin. Use ASM?)

Anyway, it is a great and enlightening experience and I would recommend everyone to write your own lang.

kovrik··on My landlord offered me $35K to move out
Sorry, maybe I'm just tired, but I think I'm missing something.

I live in New Zealand and here it is a normal practice for landlords to offer a fixed-term tenancy agreement for 6-12 month. When it expires, then landlord/tenant can decide whether they want to sign another one (fixed-term), otherwise it becomes periodic.

Isn't it the case in US? I mean what's the point of wasting $250k if you can just wait for 6-12 months?

Or why can't they sell the building with a tenant? Why move out, what's the problem? It is a common practice here in NZ too.

kovrik··on Ask HN: How do you keep checklists?
At work: Org mode (Emacs)

Personal stuff: I just send emails to myself.

Something like: '[TODO] Do something ...' Then you can elaborate in the message body.

Pros:

- free

- simple

- no apps required (or: you can use any app/web client you want)

- easily done and accessible from anywhere

- auto sync out of the box

- search/filtering out of the box

- timestamps out of the box

- tags out of the box (via email tags/labels)

- groups/projects out of the box (via mail folders/inboxes)

- rules out of the box (via email rules)

- supports files, links, code snippets, formatted text etc.

- I can flag/unflag them, delete/restore, mark as read/unread and so on

- most clients allow you to add a reminder/follow up for an email (hence, reminders and notifications out of the box)

kovrik··on Ask HN: 2018 Summer Reading List?
'Malazan: Book of the Fallen' by Steven Erikson (that is actually 10 huge books).

I've only read 2 books and a half so far and it is brilliant!

I'm not a big fan of fantasy books (prefer hard sci-fi), but Malazan just blew my mind. One of the best things I've ever read.

Not an easy read though, be prepared!

kovrik··on Why Isn't Debugging Treated as a First-Class Activity?
Agree.

Yes, ability to explore and understand the project via debugger is a great and useful skill.

However, if it takes debugger to understand that project, then, I'd say, it is a badly written and poorly documented project.

kovrik··on Ask HN: How do you get past difficulty learning what's needed for a new job?
But everyone already does that. When you get a new job, you can't just merge in seamlessly like you've been working there for ages.

Of course, saying 'fake it' I don't mean 'just pretend that you know stuff, but don't actually learn and don't work hard'. You have to learn, you have to work hard to really understand the project etc.

kovrik··on Ask HN: How do you get past difficulty learning what's needed for a new job?
Yep, recognized the name too!

My advice would be: fake it till you make it.

Relax, try to split the whole thing into small pieces, try to understand how they interact with each other, try to understand the dataflow.

Also, in my experience you can never actually grok the whole system at once. It is a slow process.

And what always helps me: separate things that _actually_ matter for your work and everything else (the power of abstraction!). Not sure how to explain it properly. Basically, when I start working on a new project, the number of new things (new words, terms, abbreviations and other domain-specific stuff) is often overwhelming. But in most cases it doesn't matter. Most systems are pretty much the same: data flows here and there, this thing validates stuff, this thing calculates something, this thing stores results etc. They just have different names and use different words, but in reality they are the same thing.

Finally, it's just a job. Take care of yourself, your health (including mental), relax, take it easy.

UPD: also, really, take care of your health! Eat healthy food, do exercises/go to gym, daily walks (it makes a huge difference!), sleep well.

Also, some supplements help me a lot: vitamin D3 + K2, Zinc, Fish Oil, Magnesium + Calcium. For me it made a huge difference! You can also try L-Theanine (with coffee).

kovrik··on Running JRuby on the Graal JIT
True! Personally, I'm in love with Kotlin. But also like Clojure. However, it is really nice to see that Java itself is getting better and better each release.
kovrik··on Running JRuby on the Graal JIT
Great stuff!

Devs often complain about Java being boring and old-school, but it never ceases to amaze me how cool Java and Java-related techs are (JDK, JVM, GC etc.)!

Literally, state of the art, almost alien technology. And it seems that more cool stuff is coming.

kovrik··on OpenPDF – A free Java library for creating and editing PDF files
Yeah, current docs might not be the best, I think they are still working on it.

API was pretty intuitive, plus some googling and reading stackoverflow. And yes, browsing the source. I don't remember encountering any major problems with it.

kovrik··on OpenPDF – A free Java library for creating and editing PDF files
Would recommend!

Used PDFBox a couple of projects ago. It was great! Very nice API, works like a charm.

kovrik··on Toward a Mature Science of Consciousness
But wouldn't it mean that literally all living beings have consciousness? That consciousness is not a binary thing, but there are many levels of consciousness.

Humans always liked egocentric views -- "The Earth is the center of the Universe". Or another version: "Humans are superior because they have consciousness".

If there are many levels of consciousness, one may imagine some extraterrestrial super intelligent beings that are many levels above humans, that would think of humans as non-consciousness beings -- like we think of many animals.

Now, if we go down instead, we can say that all animals with brain are conscious (just as not as we are), can't we?

kovrik··on An Ancient Virus May Be Responsible for Human Consciousness
Isn't it what they said in the article?

If there are any problems with Arc gene -- if it is not transferred properly to a child -- then child might develop various conditions (autism etc.)

kovrik··on Muons: the little-known particles helping to probe the impenetrable
Question: why muons? Why not electrons?

Or why not neutrons, which are not charged (hence should penetrate better, if I understand it correctly)?

kovrik··on Apple Signs Deal with Volkswagen for Driverless Car
They are OK.

Not sure about US, but here in New Zealand they don't work so well.

I try Apple Maps ~once in 6 months, They are definitely getting better and better, but still no comparison to Google Maps.

kovrik··on Apple Signs Deal with Volkswagen for Driverless Car
Can they please make Maps and Siri usable first?
kovrik··on Show HN: Grayscale the Web – A Chrome extension to help avoid mindless browsing
Nice idea!

Would be great if it was not just On/Off switch, but one could set timer (per site) and it would gradually desaturate website the longer you stay (1%, 2%, ...).

When timer turns 0, then site becomes fully grayscale (100%). When page is closed, then the timer is reset (after the same period of time?).

kovrik··on Does Clean Laundry Have Germs?
Exactly what I meant. Yes, you can bleach all your clothes, but not your whole house.

Then, if you already have stomach flu, then I don't see how bleaching your clothes might help here. Take a medicine.

Finally, reading about stomach flu (I'm not a doctor), it doesn't look like a serious problem: > Most people with the stomach flu require no formal treatment. The key to a rapid and safe recovery at home (home remedy) is proper hydration.

If it gets more serious then take a pill or/and go to a doctor.

kovrik··on Does Clean Laundry Have Germs?
This is interesting indeed and I appreciate the amount of work done, but honestly I don't see the point.

Yes, germs are everywhere (surprised?), so what?

First, you can't bleach all you house.

Second, even if you could, why do that? Our body seems to fight nasty stuff pretty well. If you have some specific condition or disease, then just take targeted measures.

kovrik··on Java 10 and beyond – a look at the potential language change
Brian Goetz said:

> We are "reclaiming" the syntactic real estate of "_" from the space of identifiers for use in future language features. However, because there are existing programs that might use it, it is a warning for identifiers that occur in existing syntactic positions for 8, and an error for lambda formals (since there is no existing code with lambdas.)

kovrik··on Java’s Mysterious Interrupt
Well, nowadays all checked exceptions are considered to be a mistake.
kovrik··on Unprivileged Docker Builds – A Proof of Concept
Yes, that is sad, but very common, unfortunately.

In the place I'm currently working at we have Windows behind Cisco VDI, we have to have Cntlm proxy running (all traffic goes through it).

Last week I got an email from Security team because I installed Decentraleyes addon for Firefox. Apparently, it's not allowed and is a security breach.

kovrik··on Ask HN: Side project you're working on?
Scheme R5RS implementation in Kotlin: https://github.com/kovrik/scheme-in-kotlin

But the development has stalled recently: can't figure out (read as 'too lazy') how to implement macros and how to fix some issues with lazy sequences.

But overall, really love this hobby project, very enlightening.

← PreviousPage 3 of 8Next →