HN user

furicane

216 karma
Posts0
Comments37
View on HN
No posts found.

I've been using vue, nuxt and typescript without any issues so far (6 months with TS though). It's not vue that's at fault for troubles with TS.

PHP in 2019 7 years ago

I often run into this argument - "inconsistent syntax", followed by zero proof. Then I wonder - is the person making the comment even using PHP or is the person behind the comment.. even capable programmer?

Yes, PHP has been "cleaned up" and you have always had the option to use clean, concise way of coding without language interfering or hindering you in any way.

There's no programming language out there that makes up for the sloppiness and inability of the person behind the screen.

Quake 2 is one of the most difficult FPS games to play competitively. I played the game for 10 years, 1998 - 2008. I can tell you're looking at the game from a different perspective (I'm assuming you're referring to its singleplayer), however - its multiplayer component was nothing short of amazing. Game actually takes a huge physical toll on the player due to complex controls (strafe jumps, circle jumps, doublejumps, circle-strafes, occasional rocket / grenade jump), and the movement aspect combined with aim and general awareness made it one of the best games I had honor to play.

Basically, what irks you is that Vue separates presentation (visual) from the logic via <template> and <script>, reusing components via HTML elements is poorly thought out and binding values to attributes is bad because hey, you can actually use JS to compute the value.

Naturally, even though you can disregard the templating and resort to idiomatic JS, like one in React, you managed to develop an opinion after not using the features you like.

This just makes no sense honestly. I'm all for people having opinion to the point where you can blatantly say "I hate Vue because I like React more", there's literally no need for justification.

But spewing nonsense just to justify your preference is just bad. Are you a junior dev by any chance?

I've used both extensively and I can recommend Vue over React because React is a pile of mental manure. I never understood React hype, but then again - IT is a fashion business, and when "leaders" invent crap - flies tend to follow.

I've been in frontend for a long time, since 1999. The dev console is my workplace. I have to use and be familiar with all popular browsers. Chrome's dev tools are far better in my opinion.

What’s fascinating to me is the length people go to in order to justify freeloading.

I can tell you didn't read carefully what I wrote, but that's fine.

Here's what Spotify tells me: "Spotify gives you instant access to millions of songs – from old favorites to the latest hits. Just hit play to stream anything you like."

Where's "but we'll also monitor you and inject whatever code we can, we might allow our customers to do so too, we don't know what it might be but since we wasted $0.003 to acquire you, we need to make at least $5 off of you and we don't really care what happens to your device or if someone breaches our customer and does bad shit to you."

I believe in reciprocity - and the odds are worse at my side if I "freeload" :)

It's fascinating how we, humans, are lazy. We're lazy to the point where we'd gladly allow services like Spotify to control our computers just so they can make sure their ad was delivered. We'll even justify it by "well, I really listen to a lot of music". All I want is to push a button and get some bearable-noise during my 8 hours at work.

I don't know about the rest, but I really hate when someone makes a fool out of me. I'm a lazy person too, if a service that I like asked me bluntly "hey dude, wanna give us all your info and let us sniff your traffic so we can stick ads in, we're even gonna sell it" - I'd say - sure, you were honest enough, screw it - go ahead, I didn't have to navigate through a wall of text critting me for 9000000 to get that piece of info.

But no. No one behaves like that. Long user agreements, service agreements, catchy call-to-actions on websites that promise wonderland filled with unicorns shitting M&M's and what not just so they get those few bucks out of me...

Oh well, hello foobar2000 my old friend, seems like I'll un-lazy myself just to spite these prying assholes.

We created higher level languages to reduce time spent coding. We wouldn't be using assembly.

It appears that we think about different terms when visualizing what "incompetent" means.

We create languages to tackle different sets of problems, and we want to minimize human error - that part, I believe, we can agree on.

However, if you perform "SELECT * FROM mytable" (table grows indefinitely) and then sort / limit in the language and not database - you're incompetent, you simply lack knowledge and you didn't even think abstractly what can happen by doing so. There's no language out there that can teach you "right tool for the job" or "keep it simple" or "should I do it, maybe there's another way, did someone else have this problem?", no matter what wizard creates it.

We will never weed out incompetent people by creating languages and a language shouldn't cater to a moron.

In the context of what you're doing with PHP, that one-fits-all data structure is all you need. I sincerely doubt you had hurdles in your career because of PHP's array :)

However, let's prove once more that languages evolve: http://php.net/manual/en/book.ds.php

The "classic" you're referring to is far from something objective. There will always be problems with languages. That's why we have the human factor who is supposed to be intelligent and work around the apparent issues and make the computer do useful work despite apparent tool glitches.

Sadly, we're just creating better idiots who are only getting better at whining.

The dev console is better than Firefox one. It's faster. Minimalistic interface is great. HOWEVER - Firefox console is catching up. Firefox is fast enough. Chrome is getting more and more bloated and interface is starting to suck compared to initial version of Chrome. Now they're trying to do stupid things and promote ads more and more. It gets worse every day and hopefully, they'll screw up to the point it dies. I loved Google before, now I'm disliking them as much as I do Facebook. I root for Firefox, but it's still not there yet.

Guys who maintain Firefox - thank you. I hope I'll join the FF users once more in the near future.

PHP recently received an extension that exposes an asynchronous programming framework, called swoole. It's extremely promising (but not perfect). Here's the link https://www.swoole.co.uk/ and it produces some very, very, very interesting results - both in synthetic benchmarks AND real world. Link: https://www.techempower.com/benchmarks/#section=data-r17

In certain use cases, it literally annihilates Golang for example and leaves node.js way, way, way behind.

Now, ignoring the numbers, there are many things you can do using PHP:

- web applications

- background services

- queue systems

Imagination is the limit (but that applies to any language these days)

There's plenty options to choose from, from web-related frameworks to community provided libraries, even the command line interface received a ton of cool libraries to play with. I can't state that you can do X in PHP but can't do the same in Y, Y being another language. However, frameworks such as Laravel make it trivial to bootstrap a project, create an API, create a nice UI using Vue (Laravel comes with excellent Vue tooling) and deploy the whole thing in a few easy steps to popular hosting providers.

Granted, it's not language specific, there was a huge community effort behind everything PHP related: from standards, to package manager, to tooling, utilities and so on so the ecosystem is quite healthy and progressing.

The nice thing about it, ultimately, is that it's really fast enough and keeps getting faster, with new (useful) language features.

If you're after a tldr version and don't care about the wall of text above:

Strenghts:

- excellent ecosystem http://www.packagist.org, http://www.getcomposer.org

- excellent *nix support, easy installation: https://launchpad.net/~ondrej/+archive/ubuntu/php

- great object oriented model that supports strong typing: http://php.net/oop

- excellent choice of web-app frameworks: https://laravel.com/, https://lumen.laravel.com/, https://symfony.com/

- big choice of extensions that expose additional functionality, such as swoole: https://www.swoole.co.uk/ or zeromq: https://github.com/mkoppanen/php-zmq

- great performance for an interpreted language

- easy scaling due to php-fpm http://php.net/manual/en/install.fpm.php (this has been available for a decade)

I second this.

Without going into what I've tried and yadda yadda yadda, white noise, my credentials and so on - PHPStorm id the IDE. No Atom / VSCode or whatever can't compare. You get ctrl+click go to definition, you get ssh terminal, you get XDebug integration, it plays with Vue/ES6/React, you get MySQL integration, Vagrant integration, extensions to get VIM bindings and so on. Next to proper keyboard, monitor and mouse - buying PHPStorm is hands down one best money spent when it comes to what I work with every day.

I'm NOT saying "you can't get X with Y editor which is free" - sure, I believe you can, but this thing completely satisfies my every requirement and I don't have to spend time looking for integration extension or whatever. It saved me a ton of time so far, it will do so in future - I approve it, however I don't think anyone's editor "sucks and you should go with PHPStorm". Everyone should go for what they think brings them the best experience / value.

They are, quite good and the performance keeps improving with every new version. We're expecting another huge performance boost with version 7.4

Out of curiosity - have you ever actually programmed anything? You're angry, which I can understand, and hateful but you're providing zero facts to support your opinion. You sound like a child deciding what's cool to like and what's cool to bash. Naturally, with nothing to back your opinion up. So, do you even code?

40x speedup claim with 0 evidence or reproduction scenario. It's like that meme: "source: trust me dude". The conclusionnis: they made a middleware, something that nginx's auth module does.

I want to believe this. I want to be hyped. It sounds great. But there's no reproduction scenario. Some claims are also false (php doesn't kill the process to start the processing cycle). Others seem too good to be true - like 40x speedup.

It just smells like "hey, we are cool kids too, look at us, we're advertising using the hype that other kids use!".

If I'm able to reproduce 40x speedup, I'll so gladly eat my words and flame myself.

You're not confused, and you felt the irony in my post. I wrote it's trying to be PC, and I didn't touch base upon what PC actually means - it's a broad term, different in everyone's eyes. Yes, Tumblr is bowing down to someone's standards, I called that PC, you are bothered by that statement - let's agree we disagree but you got the big picture and that's what matters.

I wouldn't label the algorithm as anti-porn. I'd label it "how to lose user base and drive the company to a hole" algorithm. It's not likely that it detects actual porn, it's basically failing miserably and the result is abandonment. That's what you get when you want to be PC and yet another "me too, I do cool stuff too" company. There are lessons to be learned here, and for that - thank you Tumblr :)

U2F isn't as trivial to implement as RFC4226 OTP. It takes effort. Implementing the counter check is trivial. Disregarding the counter and stating "that only enables replays" is absolutely unacceptable. If one is so irresponsible to the point they're enabling a replay attack - then there's no excuse and no valid argument to support the use of U2F at all. If you (not YOU, personally) can't implement the protocol fully, don't half-ass it and plant mines. That's my take on it, and anyone who implements this protocol to secure people's accounts MUST (not SHOULD) think the same. There is NO excuse for deliberate irresponsibility.

I haven't got any info on websites caring about the counter value. It seems.. pointless to use U2F if you just disregard the counter value. You need to extract it from the response in order to construct the binary data to verify the signature. If one disregards the counter value, they can just outright drop the whole U2F.

U2F is a two step process - you need to register the device first (through challenge-response process called ENROLLMENT), then you can use it by issuing authentication challenge (U2F authentication is NOT the same as user authentication, they labeled the process as ENROLLMENT - AUTH process).

During registration you receive several pieces of info, such as keyHandle, public key you use to verify future device responses and an attestation certificate so you can verify the device vendor.

The interesting part is this: when you challenge the u2f device to sign AUTHENTICATION request, what it does is keep a counter tied to your appId (the domain where the .js that deals with this is executed) and it produces encoded json which is signed by the device, using an EC private key.

The counter increases every time the device is challenged by that particular appId. The response is signed using the counter and a private key that's on the device (which you can't tamper with).

So, the phishing / mitm should have the value of private key and the moving part (counter) that's tied to a specific appId. That's difficult since it SHOULD do this during enrollment process and every subsequent authentication request.

What's important that not only does it protect against phishing but from replays too. Naturally, the u2f device isn't standalone responsible for this, the verifying server implementation is a crucial part of the process.

Disclaimer: I'm not affiliated by Yubico, but have implemented U2F (the dreaded js part and backend part) in 2015, several months after Chrome 38 has been released, the first version supporting u2f protocol.

Sooo... paint me stupid but I find the title completely misleading and another, very, VERY annoying thing caught my eye - after reading the text, I caught myself repeating the word "thousandeyes" and it annoyed me to no end. Then I re-read the text and I found that you can kick that word out of every 2nd paragraph and the text would still have merit.

Is this yet another marketing ploy where you post something with purposely-misleading title in order to attract traffic? I don't like the fact that word "thousandeyes" got stuck in my head, nor do I like the fact that I got clickbaited. This one is going to my list of "just like every other site since 2015, don't click".

Guys, I believe you are engineers that are doing an amazing job. But the whole "free up to 128GB" promotion is just.. wtf. And the website revolves around attracting IT managers, not engineers that make educated decisions related to project(s). I make decisions based on calculations, not based on shiny websites. I'm not undermining your product. It appears to be amazing. I'd love if it were free and open source. Heck, we'd probably spend a ton of money on it for paid support, scaling planning, consulting, deployment and what not. I just hate your business model, that's all. Let me have your program running without constraints! And because of it, I can't see a reason to use it. I choose to explore other venues that went down the open source route. I'm quite okay with not running the fastest option. No hard feelings, I sincerely wish you make a huge dent in this area and make a ton of money!

I tried to come up with a smart and polite comment but I can't. The target audience for memsql aren't developers or engineers. It's the management that has no idea about IT. I don't like closed-source solutions. I don't want to book a demo. I want to be able to read the source. I want to install it, use it, benchmark it, be sure that the results are 100% accurate. Sadly, I see this post as marketing ploy and I can't find any nice words for this product.

As someone who started using internet in 1997. (I still consider myself green) - this is a perfect website.

Could it use improvement? Yes. Does it need it? No.

Simple, fast, does one thing and does it great, has no featuritis and overblown annoying "UX" that current web suffers from.