wyqydsyq's comments

wyqydsyq | 6 years ago | on: Lyrics Site Genius.com Accuses Google of Lifting Its Content

How is Genius.com in a position to make any claims on "its content" when said content is entirely the copyrighted works of various artists?

Just because the lyrics may be entered by users has no bearing on the fact that the lyrics are copyrighted works and that Genius.com doesn't own or have any rights to them. Just like doing a cover of another band's song doesn't mean you now own the song, reproducing and distributing a song's lyrics doesn't mean you now own the lyrics.

wyqydsyq | 6 years ago | on: PHP in 2019

> Did you memorize the API to every single language you write in?

No, that is my point. Languages with consistent core APIs are more easily discoverable, less error-prone and result in developers being less reliant on editor hinting. Writing PHP requires to you memoize random shit like the fact that json_encode() accepts options via bitmasks, inconsistent with the rest of the language for no apparent reason.

> What's vague about it?

- Imports/namespaces are not explicit (no intuitive way to know what methods are being provided by a given import without diving into it's file)

- All HTTP input (remember, PHP basically exists to script HTTP responses) is magically provided through vague superglobals that are set to wildly different values depending on what HTTP server you use and how it is configured

- Variables are all declared in global scope by default

> You _can_ run your website using only the built-in webserver for those languages, but are you really going to do that?

Yes. Unlike with PHP, running a single-process HTTP server does not result in thread locking for most other languages as their HTTP implementations are asynchronous by nature. There are currently some PHP community projects to implement async i/o, but there isn't even really any point trying to use them given PHP is meant to be having native libuv support eventually which will more or less make them redundant. And even then, why would you go to all this extra effort reinventing the wheel if not just to be stubborn and avoid having to learn a new language which is better suited to the task at hand?

> Or are you going to put Nginx or Apache in front

I hope you realise that other than for traditionally CGI-executed runtimes like PHP, Ruby and Perl, external HTTP servers like Nginx and Apache are almost exclusively used as a reverse proxy for things like load-balancing and SSL termination and have little to no involvement in processing and responding to the actual HTTP requests, which is typically left up to a HTTP server implemented in the application code.

Sounds more like you have little to no experience with web services outside the PHP world.

wyqydsyq | 6 years ago | on: PHP in 2019

There's still lots of small-fish web development agencies who specifically hire PHP developers.

That's about it though, I think the web development industry is specifically tied to PHP because of their excessive dependence on WordPress, Drupal etc, this also produces developers who are overly specialised in niches using these platforms at the expense of general capability. Think back to the mid-2000's where there was a big difference between a JavaScript developer and a jQuery developer - while they both wrote JS the latter was generally incapable of using vanilla JS proficiently because their use of jQuery's abstractions as a crutch impaired their learning of the underlying fundamentals. A lot of "WordPress developers" are so heavily specialised in using WordPress they probably can't even remember how to write a vanilla PHP site.

wyqydsyq | 6 years ago | on: PHP in 2019

PHP doesn't have anything to do with the HTTP protocol, Apache/Nginx/etc handle HTTP and simply call your PHP script with some global variables set to values parsed from the HTTP request

wyqydsyq | 6 years ago | on: PHP in 2019

I respect the leaps PHP has come as a language and runtime in recent years, however I still can't understand why anyone would elect to use it for greenfields projects.

The developer experience might be better than it's ever been, but even as pointed out in this article, it still has all the old issues like inconsistent core API, vague global context, and way too much implicit magic and guesswork. Not to mention it still relies on running a separate, third party HTTP server, in contrast to Node.js, Java, Python etc stacks where the HTTP server itself is a native construct of the language/runtime.

I can't see any single use case where there isn't a more appropriate alternative to using PHP. The only feasible reason I can see someone would use PHP for a greenfields project in this day and age is that they simply don't know any better.

"I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail."

wyqydsyq | 7 years ago | on: Red Flags in Software Developer Job Descriptions

Since people realised writing the same code in two different languages is a waste of time and the async-first nature of NodeJS/libuv is ideal for use in microservices.

Compare implementing back-end form validation in PHP and a completely different implementation front-end validation in JS vs using the exact same implementation on both sides. The former approach requires more work, creates a larger maintenance burden and a greater area for inconsistency and error because you need to maintain functional consistency between the two different implementations in the two different languages

wyqydsyq | 7 years ago | on: Rebuilding My Personal Infrastructure With Alpine Linux and Docker

Sounds like you don't understand Docker or containerisation in general

> Still have to decide on a single OS to reduce maintenance problems.

No you don't, you can run various distros in docker containers. We're using a mix of Debian (to run legacy services developed to run on old Debian LAMP servers) and Alpine (for our sexy new microservices) at my current job.

> Could just have installed all the services (which are all available as packages) and handled the configuration files

Then you would have a system dependent on the volatile state you configured by hand, meaning the system configuration is not declarative or reproducible.

wyqydsyq | 7 years ago | on: Red Flags in Software Developer Job Descriptions

Until probably the last 5 or so years this was the norm. Until Node.js became widely used as a web developer you were essentially required to know JavaScript and at least one of Python, Ruby or PHP. For companies trying to shift away from these legacy environments or those who haven't started yet it's pretty reasonable for them to try and hire those kinds of devs still

wyqydsyq | 7 years ago | on: Red Flags in Software Developer Job Descriptions

There was actually a post a few weeks ago about a project which is essentially a modern CF runtime, while I still can't imagine anyone using it to build new projects, I'm sure many orgs are still actively using it to glue their legacy systems to newer ones

wyqydsyq | 7 years ago | on: Comcast modem activation bug potentially exposed customers’ private data (2018)

Unfortunately unless you live in a metro area your options in Australia aren't much better. Most rural or country areas and even some suburban zones are only serviced by a single ISP who may decide you don't need internet.

I lived in Ipswich for 1.5 years, prior to moving in I signed up for ADSL2 (no NBN available in the area yet) with Telstra as they are the only ISP servicing the area.

I was told that the local exchange has no available ports, and that I would need to go on a waiting list to be given a connection.

I was periodically getting their "Sorry we can't provide you usable internet yet, how about ADSL1 or some 4G data at rip-off prices?" for that entire time, until I moved out and cancelled the still-pending service.

wyqydsyq | 7 years ago | on: Comcast modem activation bug potentially exposed customers’ private data (2018)

A - If your router only lasts 12-18 months you need to reevaluate your purchasing decisions. Unless you manage to break a router more frequently than once every 2 years (which is abnormally high failure rate) buying is far cheaper than renting.

B - Firmware upgrades are only controlled by ISPs when you're renting the hardware from them. Your ISP has absolutely zero bearing on whether or not you can upgrade firmware on your own router

C - Your only reasonable point, and in my personal experience I've had more difficulty with ISP tech support fixing their included router than configuring my own

wyqydsyq | 7 years ago | on: Want to Stop Fake News? Pay for the Real Thing

Ironically I couldn't read this article about why I should pay for news because their paywall blocked it.

The result is I didn't pay and didn't read the article.

Seems to be an effective measure if your goal is to reduce clicks and deter readers

wyqydsyq | 7 years ago | on: Want to Stop Fake News? Pay for the Real Thing

The idea that "news organisations" still have any journalistic integrity is an absolute joke. Most now amount to nothing more than opinion blogs and biased propaganda against political party X or Y.

The decline of integrity in mainstream media is actually what has gotten us into this mess. If the quality of mainstream news reporting did not decline so widely there would not be a vacuum for sites like JoeBlowKnowsTheTruth.com to draw an audience.

News organisations and their journalists are completely responsible for the scenario and trying to blame anyone else is just a scapegoat for their own bad work, the consequences (decline in readers/revenue, journalist layoffs) are theirs to face.

wyqydsyq | 7 years ago | on: Dbeaver – Multi-platform database tool

Except if they decide they don't have any updates to release for a month you just paid them for a month of nothing.

The issue with a subscription for self-hosted or locally ran software is that you are obligated to pay an ongoing fee, without the provider being obligated to provide any service in return. Their terms do not require them to adhere to any release schedule or anything showing that by paying a subscription you're getting X. It's basically a recurring donation in hopes the software you already paid for gets an update.

Imagine if your OS required a subscription for your computer to be usable, even when the developer of your OS doesn't release any updates that benefit or affect you for months, if you don't keep paying your subscription you get locked out of all of your work for no reason other than some marketing douche thought it'd be a good way to squeeze a more regular revenue stream out of their existing customers?

wyqydsyq | 7 years ago | on: Dbeaver – Multi-platform database tool

Except if they decide they don't have any updates to release for a month you just paid them for a month of nothing.

The issue with a subscription for self-hosted or locally ran software is that you are obligated to pay an ongoing fee, without the provider being obligated to provide the service you're paying for. Their terms do not require them to adhere to any release schedule or anything showing that by paying a subscription you're getting X. It's basically a recurring donation in hopes the software you paid for gets an update.

wyqydsyq | 7 years ago | on: Dbeaver – Multi-platform database tool

Gitlab is a terrible example, they are charging for a SERVICE of providing hosting and support for their higher tiers.

They are not charging a subscription for you to be allowed to download Gitlab and self-host it.

page 5