HNHacker News
TopNewBestAskShowJobs

rantanplan

881 karma · joined June 9, 2013

submissionscomments
rantanplan··on Problems with RESTful APIs (2015)
> I've been trying hard for years to find a reason to bother with PUT, but so far I've found it not worth the effort.

And right there, at your final sentence, you basically described why REST has more or less failed.

GET and POST are useless for implementing a complete application protocol. You'd basically overload these http verbs to the point where you would implement your own protocol. And that's what most people do anyway. You choose to not use PUT, some other person chooses to not use PATCH or HEAD and I choose to curse vehemently every time I have to use someone's service.

REST is nothing but loosely connected guidelines that nobody uses in the same manner.

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
No it's not.

CoC's try to cover from sexual harassment(which is covered by law) to general douchebaggery(which is subjective).

In the first case it is obviously redundant and in the 2nd it is impossible, hence we end up doing what we would do anyway, which is to shun the individual. If there are obvious cases were something should be covered by law, just fix the laws(which is what I say in the link you pasted). It's all been discussed in this thread, so it's shame that you have me repeat them here :(

I don't feel you have the intention for an honest conversation, as you don't seem to respond to anything I provided as arguments.

Please feel free to ignore me, as I won't be able to keep checking up on this thread.

Cheers

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
<<And we can't really get back to to the subject, because your whole idea was... >>

No it wasn't. No reason to invent stuff that I supposedly said. You can re-read all my answers in this thread if you want.

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
> Interesting. Does it happen often in practice?

Not really, but it does happen occasionally in work places, because if it happens often enough it is basically the equivalent of bullying(called mobbing at work).

> The US doesn't have such laws. Whether you consider the US civilised, is another matter. :) Do you want to exclude contributors from uncivilised countries?

It's because I consider US a civilized(and a very litigious) country that I'm sincerely surprised that its laws don't cover such things.

> The goal of a CoC is to have a set of rules that the community agrees upon and to foster a certain culture. E.g. no personal attacks, constructive criticism only, be civil in your interaction with others on the project. The consequences of violating the CoC can be to ban the violator from the project.

So basically what I described as "shunned" from the community.

But previously you said:

> Which jurisdiction? How will you find out about my identity? How will you enforce any potential judgment if I'm in Somalia? How much time and money will it cost you to a) get a conviction, and b) try to enforce it?

So we agree that CoCs can't serve as substitutes for laws?

The HN guidelines are a perfect example because the first half has practical use which is how to submit an article and the 2nd half which is indeed useless.

Let's be honest here. What you're looking for is a magic wand that say "if you could please don't be an asshole, that'd be grand thanks" and people would be happily ever after. Right?

Well there's no solution for that and CoCs can only serve as to infuriate people who aren't assholes.

Just shun them as you would do with or without a CoC.

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
That "civilized" country has too many feelings.

Already covered what you said here :https://news.ycombinator.com/item?id=13667840

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
You should add another minor detail, which is that I should not be legally prohibited from taking a walk, or walk my dog, without a crazy person following me around calling me an idiot. I would call that harassment/abuse.

You can express your opinion on people in public office as much as you want. We weren't talking about Presidents and dictators though right?

So maybe we should get back to the topic of how CoCs have no merit or practical use?

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
No confusion.

See my answer here: https://news.ycombinator.com/item?id=13667732

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
> If I call you an idiot, is that insult covered by the law?

Yes. In Greece I can sue you over that. If that's worth my time or not is a different issue, but if I can somehow prove it, you're in trouble and I can ask for restitution for the psychological effect it had on me. I bet it's the same for all civilized countries.

CoCs have nothing to do with the rest of the things you're saying. They are not enforceable by law, they won't get you any kind of conviction. Best case scenario, you shun the person that didn't adhere by it. Which guess what? You can do that anyways, without any CoC in place.

So really, I have no clue why you think that redundant things like CoC have any practical use.

EDIT: instead of downvotes just explain where I'm wrong. Too many feelings here, very few logical arguments.

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
Um yes, there are.

If your country doesn't have them, you have a serious problem.

EDIT: what's with the downvotes? Laws are supposed to guarantee a civil behavior so that we can have organized societies. If your laws don't cover that, fix them.

rantanplan··on Go CoC updated to remove “punitive language and anonymous reporting mechanism”
100% what you said.

CoCs are absurd. Laws already cover all that. If they don't, fix them.

US PC crap is what it is.

rantanplan··on Using Vim as a Python IDE
Log into the machines to your heart's desire. I never said we never log in.

I said we never directly change code on production because it's bat-shit insane. That's why this thread was started. You can trace it back.

I never acted superior, but I really don't get the "me and some people I know do this so everyone must be doing it". No they're not.

And what I described in all my responses (not just to you) can be scaled down to this:

1) Do you know how to install a Linux machine?

2) Do you know how to install a DB?

3) Do you know how to take backups of your DB?

4) Do you know how to change your DB's config so that it points to other machines?

5) Can you write a shell script no more than couple lines?

You answered yes to all of the above? Then congrats you can already do what I'm describing. Yes, you can go crazy later with configuration software(ansible/puppet/etc) and better infrastructure, but the above will suffice as a first step.

So all this "haha, this guy is in his own SV bubble, haha"... yeah really not getting it, sorry.

rantanplan··on Using Vim as a Python IDE
Sounds pretty self-serving to say that I "referred to everyone else", just because you want to justify sloppy processes. I only referred to those who do that, and I'm sorry if I'm bursting anyone's bubble here, but nope; not everyone does that!

Also a startup doesn't necessarily have requirements for serious ops, but it may, some day. Well if they want to be an enterprise at least. You do know what the goal of a startup is, don't you?

And btw, no I don't live or work for company in SV. Europe mostly, with a dash of Dallas, Texas in the mix.

In any case, I was hoping for engineering arguments, not personal attacks. :(

rantanplan··on Using Vim as a Python IDE
I can't characterize the performance of my app on a dev instance. I don't even think it's possible. You could characterize in the sense you do it for algorithms(with regards to time complexity).

But in general this is my(our) process.

- First I write the code.

- Then I test the code locally.

- Then I test the code on an instance with a copy of prod data. If I want to debug at this point, I run the web process locally while my DB configuration points at that specific server with the prod data.

- If it's code that spans across more than one subsystem(e.g. it also involves async celery task/queue servers) I test on a staging environment, that duplicates(as much as possible) the prod infrastructure.

- Then I deploy.

Obviously there are other various details, plus rollback plans in case something still goes wrong, but that's the gist of it.

rantanplan··on Using Vim as a Python IDE
Well I don't know what your friends, social or professional circle is, but it does happen.

What I describe is not out of a management textbook. This is really really elementary stuff if you want to sustain any serious operation.

Let me explain: so you're saying a customer is on fire. Let's say that a query generated by that customer for some reason it creates a spike in your DB. Let's say that it almost DOSes your system. You know it doesn't happen locally, with your dummy/fixture data and it doesn't happen with other users/customers. So some particular configuration of state(your DB) is creating this problem. What are you gonna do my friend? Retry the query on production while you have a debugger on the webapp process? Please... be serious.

Remember, it's only once you have to setup this kind of infrastructure(and you can scale it up or down depending on your resources). And then you can do business like a normal person. What you describe is like throwing my sanity out of the window every time there's a severe(or not) support issue ticket. It doesn't scale!

rantanplan··on Using Vim as a Python IDE
Yes, PyCharm supports Vagrant, Docker etc.

My host system is Fedora but since our production code is deployed on Ubuntu, I have a Vagrant Ubuntu image. PyCharm reads the Vagrantfile and it has access to the virtualenv(python in our case) of the Vagrant's image.

UPDATE: I am not sure if that's what you were asking. Maybe this response(https://news.ycombinator.com/item?id=13543158) I gave is more relevant ?

rantanplan··on Using Vim as a Python IDE
"Almost everyone does that".

No they don't. I am not living in a bubble. You're describing a mom and pop shop.

And by the way you don't have to be a code ninja or have a super devops team for that.

You can have your code locally, point your DB config to a staging server with a copy(you do backups daily, don't you?) of production and boom!

Seriously now... elementary stuff. If you're still changing code directly on live systems you have a long way to go.

rantanplan··on Using Vim as a Python IDE
Debugging directly on the production system?

Yeah, nobody does that. Well, nobody who has any kind of serious operation going on.

If you can't replicate a bug outside a production environment you have a serious deficit in the devops department.

You should be able to stage a machine with a copy of the production DB/data and the same reproducible package(code) that currently runs on your production systems.

Everything else is just an accident waiting to happen.

rantanplan··on Trump Fires Acting Attorney General
That's only one of the possible reasons.

Now, have another guess :)

rantanplan··on Ask HN: What is the best Linux distro for a development laptop?
Since I use KDE as my desktop, I don't think it would do me any good. In general I've found that Fedora's spins(https://spins.fedoraproject.org/) are actually pretty good. So I am not exactly sure how someone would benefit from moving into a considerably more obscure distro.

It may be excellent as a distro, I really don't know. I am just thinking out loud here.

rantanplan··on Ask HN: What is the best Linux distro for a development laptop?
I'd also like to suggest the Fedora route.

I've tried most(and then some) popular distros and the last 6 years I've settle on it.

rantanplan··on Python 3.6.0 released
By itself there's no interpolation, which simply means it's not an expression.

But when you do: "{foo} {bar}" % {"foo": "blah", "bar": "blooh"}, this is string interpolation.

Is there a definition, anywhere(even a book would suffice), where it has your strict definition of what interpolation is?

I'm not trying to undermine the usefulness of the interpolated expressions and what you said. I just really want to know if the definition is so strict.

UPDATE: http://rosettacode.org/wiki/String_interpolation_(included)

I think that you are the one who's making the definition so specific and strict. I can't find a single source on the Internet that agrees with your definition.

rantanplan··on Python 3.6.0 released
> "My name is {name} and I am {age} years old".format(name=name, age=age)

This is a textbook example of string interpolation.

You can look it up on wikipedia. I am not sure what you mean.

rantanplan··on Python 3.6.0 released
String interpolation isn't a new feature, you are confused.

Python just got one more way of doing string interpolation.

rantanplan··on Show HN: Godb is a simple Go ORM for PostgreSQL, MySQL, SQLite and SQL Server
No. It would obviously be called Objection Relationship mapping and not relational.

This is really RDBMS 101 and we do have specific names and terms for a reason, please do not conflate them and don't confuse other people.

When you will go to https://en.wikipedia.org/wiki/Entity%E2%80%93relationship_mo..., you will see that it doesn't even mention ORMs.

Now go to https://en.wikipedia.org/wiki/Object-relational_mapping.

Read the "challenges" section that points to https://en.wikipedia.org/wiki/Object-relational_impedance_mi....

Now I'll just quote this:

<<The object-relational impedance mismatch is a set of conceptual and technical difficulties that are often encountered when a relational database management system (RDBMS) is being served by an application program (or multiple application programs) written in an object-oriented programming language or style, particularly because objects or class definitions must be mapped to database tables defined by relational schema.>>

Open any DBMS book. Pick one at random and read the definition of a "relation". It's always going to be "table".

Alternatively, go to the most(?) popular ORM framework in the world and read this page http://hibernate.org/orm/what-is-an-orm/

More: https://www.fullstackpython.com/object-relational-mappers-or...

<<An object-relational mapper (ORM) is a code library that automates the transfer of data stored in relational databases tables into objects that are more commonly used in application code.>>

I could go on for hours, you get the idea.

rantanplan··on Show HN: Godb is a simple Go ORM for PostgreSQL, MySQL, SQLite and SQL Server
Actually it's exactly what is meant by ORM.

Object Relational Mapper: It maps Objects to Relations.

Everything else is just auxiliary functionality.

Although I get what you're saying, and indeed the facility you describe is very convenient, it's not what the term means.

I'm just pointing that out because obviously people conflate relation(which comes from relational theory) with relationships.

rantanplan··on Show HN: Godb is a simple Go ORM for PostgreSQL, MySQL, SQLite and SQL Server
Relational comes from Relation which means "table", not relationship.

There's no relationship between 2 tables. You're probably referring to foreign keys, but these are just constraints, not relationships in the sense you're alluding in your comment.

rantanplan··on Slack Calls: Now with video
What? No they're not. I use them every day on Fedora.
rantanplan··on The Django Project Debates User Tracking
But no one else would.

The very next minute a fork of a free version would ensue.

In an era that almost all similar frameworks are for free, charging for it seems like a really bad idea for its future.

rantanplan··on I don't understand Python's Asyncio
You're conflating concurrency with parallelism.

Your 20000 concurrent connections with asyncio are not parallel. You can have 20000 threads if you want.

rantanplan··on 'Mr. Robot' may be fiction, but its hacking plots are all too real
Nah I think the age aspect is correct.

Sometimes I keep forgetting that I'm well over my thirties.

But in any case, the show did make an awesome debut, but all the cliches and weird pacing(especially in 2nd season) ruined it for me.

← PreviousPage 5 of 13Next →