HNHacker News
TopNewBestAskShowJobs

Rotareti

484 karma · joined August 16, 2016

https://github.com/feluxe
submissionscomments
Rotareti··on Why I Don't Like Golang (2016)
> mypy makes Python a pleasure to work with again.

This is my experience as well. I love that I have the option to use Python typed and untyped. For little scripts, fiddles, prototypes, etc. it's often convenient to omit type annotations. For solid software that runs in production it's nice to have them.

Another thing that I'm excited about is nuitka [0], a Python to C compiler that allows you to create binaries from Python code. It cut start-up time of a command line tool that I compiled with in half.

[0]: https://github.com/Nuitka/Nuitka

Rotareti··on Nim 0.20.0 (1.0 RC1) released
Nuitka also improves performance. It has halved the startup time for a command line tool that I wrote.
Rotareti··on Python's Caduceus Syndrome
> I think there's a lot of worth using a high level language and integrating with C.

I agree.

Python is an awesome high level interface to low level libraries and algorithms. As which it became even more appealing since you can write your low level code in Rust and call it from Python via PyO3 [0].

[0]: https://github.com/PyO3/pyo3

Rotareti··on Show HN: PugSQL, a Python Port of HugSQL
> I've been writing runtime validations for each individual query result. This has been a bit annoying to maintain at scale since I don't have very good patterns for it.

I think pydantic [0] solves this problem perfectly. The objects you create with pydantic work with type systems such as mypy too, so you get all the editor support for them, if you want.

https://github.com/samuelcolvin/pydantic/

Rotareti··on Choosing Ruby on Rails for web development project in 2019
> And now your RoR developers have to support a C library

In Python you can write your low level extensions directly in Rust via PyO3 [0]. I guess there is something similar for Ruby.

[0]: https://github.com/PyO3/PyO3

Rotareti··on Angular v8.0
Comparing Angular to React is comparing apples to oranges. It would make more sense to compare Angular to React based frameworks such as NextJS [0]. Those are "easy to get up and running" and offer "a very solid foundation that can be picked up easily by new devs starting on the project", as well.

[0]: https://github.com/zeit/next.js/

Rotareti··on GDPR adtech complaints keep stacking up in Europe
> It really does not help we have tables with few hundred companies listed.

It helps so far that I (as a user) see upfront how much an article costs (in tracking data). I can then decide if I want to pay for it or not.

Rotareti··on Virtual DOM is pure overhead (2018)
Don't forget to mention the poor (and complicated) editor support for "these custom HTML templating languages". JSX is very well supported in most editors.
Rotareti··on I do not use a debugger (2016)
I never got comfortable with debuggers for the work that I do. Thus I rely heavily on "print debugging". There are tools such as "icecream" [0] (in Python), that improve print-debugging ergonomics a lot. I wish every language had something like "icecream" built-in.

[0]: https://github.com/gruns/icecream

Rotareti··on Microsoft, currently the most valuable company, is having a Nadellaissance
The arch linux package registry has a version of VSCode available, that is build without MS telemetry/branding. I guess that's what parent is using.
Rotareti··on Flutter desktop shells
Google does something similar to push Chrome over Firefox: https://news.ycombinator.com/item?id=19669586

I don't get why you are downvoted..

Rotareti··on We need a new generation of source control
> My dream is to be able to drop a repo inside another repo and have git just treat it as if it were part of the parent repo. And then to be able to bundle the child repo to the parent and push it.

I'm not sure if I understand you right, but I think I made what you describe: https://github.com/feluxe/gitsub

It's a simple wrapper around git, that allows nested git repositories, with almost no overhead.

I use it for a private library (the parent-repo), which itself contains modules (the child-repos) that I open sourced on github. It works fine for my use case. I wrote it, because I found "submodule" and "subtree" too complicated. 'gitsub' is still in alpha.

Rotareti··on Show HN: EdgeDB – Next generation database
That sounds awesome! :)
Rotareti··on Show HN: EdgeDB – Next generation database
I like this a lot! What a great evolution of Postgresl/SQL. I also love what you do for the Python/asyncio ecosystem. Congratulations on the release!

Their is one point I'd like to address, though. It's still a real pain to write queries from within other programming languages. You either write them within strings, which sucks, because you lose all support from the editor (highlighting, auto-formatting, auto-suggestions, etc.), or you use an ORM, which I think is not a good solution to the problem. If you want to boost "developer ergonomics", make editor plugins for EdgeQL first class citizens. My 2 cents. :)

Rotareti··on Moving from Heroku to Google Kubernetes Engine
> Like any package manager it's somewhat difficult to write good packages that have all these attributes. And I think you have to admit that a well-written helm chart that covers all the bases is a lot less readable (albeit much more powerful, stipulated) than a simple yaml description of the object you want.

I agree to that, but I think the situations in which you have to write really flexible and complex charts are pretty rare. Most of the charts that we maintain and use internally, use very little templating, because they are tailored to fit our own environments, not every environment under the sun.

Rotareti··on Ask HN: Why Isn't Functional Programming Taking Over?
> In some sense, it is, it's just happening every slowly.

The web frontend world has become very functional as well. The react stack is full of FP, for example. React was initially written in SML, then transcribed to JS and recently to OCaml/ReasonML.

Rotareti··on Django 2.2
I think it's worth mentioning, that the creator of Django REST framework is also working on Starlette [0], which is a modular framework that comes with async support, crazy performance, and more...

[0]: https://www.starlette.io/

Rotareti··on Ask HN: What is the best laptop to run Linux in 2019?
I used a ThinkPad x230, now I use a ThinkPad x280. Both machines work nicely with Linux. If you are a programmer and use the keyboard a lot, the poiting stick is simply the best poiting device you can get. With it, you never have to leave the home row. I find the keyboards of both machines quite nice as well.
Rotareti··on Why I Switched from Python to Clojure (2016)
There are linters for these kinds of things that work with most editors. E.g. VSCode with pylint marks the method immediately, if you forget `self` or `cls`.
Rotareti··on On Learning Rust and Go: Migrating Away from Python
As someone who works full time in Python and TypeScript, I find the typing experience quite similar in both languages. You can be "productive" in both languages "in medium-to-large-sized projects".

> Mypy mostly seems immature, buggy ...

That was my experience some time ago as well, but it's getting better from release to release. Look at the repo [0], it's continuously improving. I find Mypy deserves more recognition.

The same guys working on mypyc [1], which I think is very interesting too.

[0]: https://github.com/python/mypy/graphs/contributors [1]: https://github.com/mypyc/mypyc

Rotareti··on On Learning Rust and Go: Migrating Away from Python
Python has type annotations since 3.5 and you can get static type checking via mypy. This is a type system that works quite well IMHO and eleminates most of the issues you mentioned.
Rotareti··on Pyright: Static type checker for Python
Now that we have type hints and statically typing in Python, I hope to see an open source Python compiler, that improves performance and produces single file binaries.
Rotareti··on Pyright: Static type checker for Python
Don't forget the one from Dropbox:

* https://github.com/python/mypy

Rotareti··on A Julia Interpreter and Debugger
In addition to this. About Python and typing, have you tried mypy (statically typed Python)? I find the typing story quite decent since Python 3.6. I use it on every project that goes above ~1000 LOC.

http://mypy-lang.org/

Rotareti··on Sketch raises $20M in Series A funding
I wonder, how do you do source control, unit testing, docs/comments in visual programming?
Rotareti··on Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]
I gave poetry a try and liked it a lot as well, but I really miss the virtualenv handling from pipenv. How do you handle virtualenvs with poetry?
Rotareti··on Major survey finds worms are rare or absent in 20% of fields in England
> The dramatic reduction in insects on car windscreens could be "explained away" by technological advances in car design

I have been driving the same car for 20 years with the same roof-rack. 20 years ago the roof-rack was crusted with insects after each trip on the autobahn. I had to clean them off with a bucket of water and a sponge after each trip. I remember this because it was a standard routine. These days, when I come back from a trip, there is nothing. I haven't cleaned the rack for years.

Rotareti··on Build and Deploy Serverless React Apps with Next.js 8 and Zeit Now
How about https://github.com/dokku/dokku ?

There is a one-click install for Dokku on digitlocean.

Rotareti··on 38% of bugs at Airbnb could have been prevented by using types
I'm a Python guy too, and what I like about Python is that I can choose between using it dynamically typed or statically typed. When I start a new script/app, I usually start without type annotations and as soon as the data-model becomes clear, I add type annotations and static type checking via 'typing' and 'mypy'. This is a worklflow I enjoy a lot and I'm very productive with.
Rotareti··on It’s Time to Ditch Google Analytics
Have you tried matomo? https://github.com/matomo-org/matomo
← PreviousPage 3 of 8Next →