HNHacker News
TopNewBestAskShowJobs

beberlei

967 karma · joined January 14, 2012

submissionscomments
beberlei··on Typed Properties in PHP 7.4
You can get a free license if you are part of an open-source project: https://www.jetbrains.com/opensource/

And if you are an individual, the license is just 89 USD.

If you are an individual contractor, then maybe you quality for a startup discount? This also gives you 50%: https://www.jetbrains.com/phpstorm/buy/#personal?billing=yea...

beberlei··on Typed Properties in PHP 7.4
prohibitively expensive? I think you haven't thought this through.

Already Chairs, Desk and Rent for every engineer is more expensive than 200 USD every year. Their salary is many hundred times 200 USD. I pay more for coffee and water that they can get for free every year.

Independent devs without income can get PHPStorm at much lower rates.

beberlei··on Typed Properties in PHP 7.4
If you upgrade your application to 7.4, all the code doesn't have typed properties.

Only when you then add them after the upgrade you should have tests for that or a static analyzer that tells you the changes you make are correct.

beberlei··on Typed Properties in PHP 7.4
PHPStorm has excellent support for types and version 2019.2 released last week includes typed properties already: https://www.jetbrains.com/phpstorm/whatsnew/

Other editors (VSCode for example) can hook into Psalm or Phans Language Server to get type information from these static analyzers.

Typing support in PHP Ides is usually excellent.

beberlei··on I just had over a thousand Euros stolen and Revolut is siding with the thief
maybe they just don't know yet that they don't want to accept people with US passports :-)
beberlei··on The new Dropbox
I am quite happy with Insync, which implements a dropbox like client on top of Google Drive and works on Linux.
beberlei··on Minimum pay at Basecamp is now $70k
The article makes mention of this, specifically customer support people are benefiting from this, which according to the article would have a 50k/year salary otherwise.
beberlei··on A PHP Compiler, a.k.a. the FFI Rabbit Hole
It is not used alot in modern code, the only use case that I think is reasonably ok nowadays from and used that way is template engines or config caches in development mode, that usually compile template code to generated PHP files, but eval() immediately during development for simplicity.
beberlei··on PHP 8 to Add a JIT
Joe (the author of this post and pthreads extension) has been working on a new threading extension in the last months that looks extremely promising and more along the lines of goroutines than Java style threading:

- https://github.com/krakjoe/parallel - https://blog.krakjoe.ninja/2019/02/parallel-php-next-chapter...

beberlei··on PHP 8 to Add a JIT
That is not entirely correct. Swoole already takes away a lot of the CPU heavy code, like HTTP protocol parsing by providing it in its C extension.

For one of my PHP extensions I benchmarked the C level implementation to be 5x faster than Jitted PHP code: https://beberlei.de/2019/03/25/the_jit_in_relation_to_php_ex...

So no, if your Swoole application does a lot of async I/O and its only in CPU code to delegate between I/O, then it will not benefit from the JIT.

"Long-Running process" alone doesn't mean that its CPU bound.

beberlei··on PHP 8 to Add a JIT
PHP hosters have been doing this for 20 years. You have 100s of customers on a single machine, running with a single Apache/PHP process (and child forks), and only if that Host+URL of a customer is requested that PHP code actually gets executed, then completely discarded from memory after its finished.

PHP is very much comparable to serverless. All that talk about bootstrapping costs in serverless is something PHP developers have been tackling forever.

beberlei··on PHP 8 to Add a JIT
Not sure if this qualifies as intermediate representation in the LLVM sense, but PHP has opcodes already, it is not fully interpreted anymore (like it was in PHP 3).

These opcodes are used for optimizations and cached for the lifetime of the PHP process (across multiple requests).

beberlei··on PagerDuty S-1
The value of Pagerduty is not in its notification, but the workflows around it. Alert in the middle of the night? Don't page unless its critical. Management of on-call schedules, escalate when on-call engineer doesn't answer. We use OpsGenie for this (in addition of sending messages to a chat, but off work that is usually muted or not installed on engineers phone), but PagerDuty has the same functionality.
beberlei··on The Titanic Was on Fire for Days Before the Iceberg Hit
And then the Spanish Flu killed even more people than WW1 in 1918/1919.
beberlei··on Pwning eBay – How I Dumped eBay Japan's Website Source Code
By that definition it is not stealing to take something that is unguarded, isn't locked or surrounded by a fence from a neighbors lawn, or a department store.
beberlei··on U.S. Freelance Workforce, Now 56.7M People, Grew 3.7M Since 2014
Looked it up for Germany (my home) and it is just 9,7% of the working population:

https://de.statista.com/statistik/daten/studie/38297/umfrage...

Even though we have universal health care it is not free and not paid from taxes but from individual direct fees. the minimum monthly rate is currently a whopping ~400€ (450$). They will decrease the minimum rate to 200€ next year.

beberlei··on Flickr free accounts will soon be limited to 1,000 photos or videos
It doesn't. GDPR applies to personal data, which photos are not (most of the time).

As long as you have an active user account on Flickr the contract / terms of use apply with regard to retention of photos, which Flickr can probably change as per their previous ToS that you accepted when signing up.

beberlei··on Unslacking Tideways Company
Hah, but I am the op :-) I didn't want it to come out negative. I don't think my critique is unsubstantial though. Essentially we switched Slack with Basecamp, which also offers a chat part, so you can replicate the same behavior, but it also offers other means to communicate. Slack in this case was just the chat tool we used, I think the problem is with chat as primary company communication, independent of vendor.
beberlei··on Unslacking Tideways Company
Author here.

I have never used IRC in a company, so I can't compare. Slack is the topic, because we used Slack. If we have had used IRC or HipChat or Microsoft Teams, then maybe we have come to the same conclusion.

Yes, summarization is important. However switching to E-Mail causes all its problems. New colleagues don't have the mails for example. Basecamp has chat and a forum/message board or todolists. We can easily link between these.

beberlei··on Unslacking Tideways Company
Hey, these all sound like very good hints on how to use Slack, especially the consensus on decision making. Maybe we have used Slack wrong, but especially the context was important for me and Slack threads are hard to enforce, you can "break out of the jail" easily, often by mistake.
beberlei··on Unslacking Tideways Company
We don't stop communicating since we unslacked though. Instead we now moved discussions more to Github PRs+issues and Basecamp. So its still possible to read up, but it feels more structured around certain tasks.
beberlei··on Unslacking Tideways Company
Yes, i don't doubt that Slack works for companies. It doesn't work for our company and our value of trying to maximize uninterrupted work time.
beberlei··on Unslacking Tideways Company
I don't know, Github + Basecamp are also used by fully remote teams and they don't focus on realtime chat functionality.

Some kind of tool is necessary for sure, but different tools set a different focus to provide a solution for organization teams and companies.

I guess everyone should find what works best for them.

beberlei··on Unslacking Tideways Company
a mix, "nearmote" :-) We all live in the same city, but everyone works remote a few hours or days per week. Also our workdays don't always match (early risers vs night owls).
beberlei··on Unslacking Tideways Company
Author here. I removed this comment after a few re-reads myself, because as you said, I don't actually have a clue about this.
beberlei··on Unslacking Tideways Company
That is something I always wished Slack had. Enable DND mode and then when you return from it, a way to review a summary of everything what happened. But individual chat messages are hard to aggregate for such a summary.
beberlei··on Unslacking Tideways Company
Author here. Working as the founder mostly alone (or relying on part time freelancers) for a long time I do have control issues that could fuel FOMO.

However how is the "Unread message" status icon, the notifications and e-mails about pings that are sent by default (Yes, you can deactivate them) not an indicator that by default Slack wants you to look into the program as often as possible. Maybe I am using it wrong, but I don't want to fight the defaults of notification overload all the time.

For example on Linux you cant even disable the system tray icon, I wrote a blog post with a hack to do this a few month ago: https://beberlei.de/2017/07/29/hide_slack_unread_and_highlig...

beberlei··on Unslacking Tideways Company
Author here. You might be right, we could be using Slack wrong. But have you read the book "Hooked"? The author writes about Slack here: https://www.nirandfar.com/2014/11/slack.html - Slack is built to addict people to use it. I don't want to fight against that, I want to have tools that support my workflow.
beberlei··on Unslacking Tideways Company
Author here. I agree about forums and "hobbyiest communities". I had a paragraph on this in the post, and how I manage them by muting most of the channels and reading up later. Removed the paragraph for simplicity :-)

Meetings are also bad productivity killer and if you are co-located in an office you must be careful not to summon ad-hoc meetings that interrupt one participant from their deep work.

beberlei··on Unslacking Tideways Company
Author here. We tried Twist a while ago and it looked great, especially as you mentioned the Threads. But at the time had performance problems with larger threads and the REST API was very complicated to add simple posts. We didn't try it again afterwards. We use Basecamp now, and it has a forum and threads as well per team or project.
← PreviousPage 4 of 9Next →