PHP

PHP

Application and Data / Languages & Frameworks / Languages

Decision at The New York Times about Apache HTTP Server, Kafka, Node.js, GraphQL, Apollo, React, PHP, MySQL

Avatar of nsrockwell
CTO at NY Times ·

When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

23 upvotes·1 comment·127.1K views

Decision at Yomali about PHP

Avatar of MikePetersTips
General Manager at Yomali ·

We use PHP because of fast development time, compatibility and maturity. Yes - its not the most elegant programming language and if you're not careful, its very easy to end up with spaghetti monolithic code. But with the right structure and discipline, we find PHP to be one of the fastest ways to go from idea to prototype to production.

20 upvotes·2 comments·6.2K views

Decision about PHP, Bulma, Asana, Stripe, Let's Encrypt, CloudFlare, Deployer, Git, GitHub, Ubuntu, nginx, Buddy, Webpack, Vue.js, JavaScript, HTML5, Sass, Google Analytics, PhpStorm, Laravel, CDG

Avatar of Epistol
Epistol.fr ·
CDG

I use Laravel because it's the most advances PHP framework out there, easy to maintain, easy to upgrade and most of all : easy to get a handle on, and to follow every new technology ! PhpStorm is our main software to code, as of simplicity and full range of tools for a modern application.

Google Analytics Analytics of course for a tailored analytics, Bulma as an innovative CSS framework, coupled with our Sass (Scss) pre-processor.

As of more basic stuff, we use HTML5, JavaScript (but with Vue.js too) and Webpack to handle the generation of all this.

To deploy, we set up Buddy to easily send the updates on our nginx / Ubuntu server, where it will connect to our GitHub Git private repository, pull and do all the operations needed with Deployer .

CloudFlare ensure the rapidity of distribution of our content, and Let's Encrypt the https certificate that is more than necessary when we'll want to sell some products with our Stripe api calls.

Asana is here to let us list all the functionalities, possibilities and ideas we want to implement.

11 upvotes·67.2K views

Decision at BootstrapCDN about PHP, MaxCDN, Bootstrap, GitHub, OpenSource, BuzzSumo, BootstrapCDN

Avatar of jdorfman
Developer Evangelist at StackShare ·
PHPPHPMaxCDNMaxCDNBootstrapBootstrapGitHubGitHub
#OpenSource
#BuzzSumo
#BootstrapCDN

The following will be a series of decisions we made that took BootstrapCDN from 0 to over 74 billion requests a month (and growing).

Initially, I didn’t want to do BootstrapCDN. I have attempted a few projects like it before and they always failed to gain any traction. In June of 2012, my boss at the time (and good friend today), David Henzel got a BuzzSumo Alert coming from an #OpenSource project on GitHub called Bootstrap and someone mentioned that MaxCDN was always looking for projects to sponsor. Long story short, David registered the domain and told me to get to work.

The first version of the site was written in PHP. It was quick and dirty but met the scope. We beta tested it for a month then people started to use it after searching for “bootstrap cdn” on Google.

I was still skeptical until, well, that’s for the next decision.

AMA below. 👇

11 upvotes·19.6K views

Decision at Labinator about Debian, Manjaro, Visual Studio Code, Sublime Text, WordPress, PHP, Vanilla.JS, Sass, CSS 3, HTML5

Avatar of Labinators

At labinator.com, we use HTML5, CSS 3, Sass, Vanilla.JS and PHP when building our premium WordPress themes and plugins. When writing our codes, we use Sublime Text and Visual Studio Code depending on the project. We run Manjaro and Debian operating systems in our office. Manjaro is a great desktop operating system for all range of tasks while Debian is a solid choice for servers.

WordPress became a very popular choice when it comes to content management systems and building websites. It is easy to learn and has a great community behind it. The high number of plugins as well that are available for WordPress allows any user to customize it depending on his/her needs.

For development, HTML5 with Sass is our go-to choice when building our themes.

Main Advantages Of Sass:

  • It's CSS syntax friendly
  • It offers variables
  • It uses a nested syntax
  • It includes mixins
  • Great community and online support.
  • Great documentation that is easy to read and follow.

As for PHP, we always thrive to use PHP 7.3+. After the introduction of PHP 7, the WordPress development process became more stable and reliable than before. If you a developer considering PHP 7.3+ for your project, it would be good to note the following benefits.

The Benefits Of Using PHP:

  • Open Source.
  • Highly Extendible.
  • Easy to learn and read.
  • Platform independent.
  • Compatible with APACHE.
  • Low development and maintenance cost.
  • Great community and support.
  • Detailed documentation that has everything you need!

Why PHP 7.3+?

  • Flexible Heredoc & Nowdoc Syntaxes - Two key methods for defining strings within PHP. They also became easier to read and more reliable.
  • A good boost in performance speed which is extremely important when it comes to WordPress development.
11 upvotes·3.6K views

Decision about PHP

Avatar of baohx2000

RE: Frameworks (pretty sure this can apply to any language, but I'm writing in reference to a question for PHP )

Use a framework only if you know the framework will cover all of the use cases and possible new features for the application. That being said, without knowing the basics and modern trends of the underlying language, you should NOT use a framework and continue learning the language first.

Personally, I would suggest using a micro-framework instead of one of the large include-everything frameworks as they have a tendency to force extra functionality on you that is usually unnecessary and may slow down your application or limit your abilities to extend it. If you find that a framework makes it difficult to add a new library, then it is not a good framework.

11 upvotes·1 comment·1.4K views

Decision about PagerDuty, Slack, Go, PHP, Java, Python, Ruby, Node.js, Sqreen

Avatar of paulblei

I chose Sqreen because it provides an out-of-the-box Security as a Service solution to protect my customer data. I get full visibility over my application security in real-time and I reduce my risk against the most common threats. My customers are happy and I don't need to spend any engineering resources or time on this. We're only alerted when our attention is required and the data that is provided helps engineering teams easily remediate vulnerabilities. The platform grows with us and will allow us to have all the right tools in place when our first security engineer joins the company. Advanced security protections against business logic threats can then be implemented.

Installation was super easy on my Node.js and Ruby apps. But Sqreen also supports Python , Java , PHP and soon Go .

It integrates well with the tools I'm using every day Slack , PagerDuty and more.

10 upvotes·77.2K views

Decision about SVN (Subversion), Git, JSON, XML, Python, PHP, Java, Swift, JavaScript, Linux, GitHub, Visual Studio Code

Avatar of fraigo

I use Visual Studio Code because at this time is a mature software and I can do practically everything using it.

  • It's free and open source: The project is hosted on GitHub and it’s free to download, fork, modify and contribute to the project.

  • Multi-platform: You can download binaries for different platforms, included Windows (x64), MacOS and Linux (.rpm and .deb packages)

  • LightWeight: It runs smoothly in different devices. It has an average memory and CPU usage. Starts almost immediately and it’s very stable.

  • Extended language support: Supports by default the majority of the most used languages and syntax like JavaScript, HTML, C#, Swift, Java, PHP, Python and others. Also, VS Code supports different file types associated to projects like .ini, .properties, XML and JSON files.

  • Integrated tools: Includes an integrated terminal, debugger, problem list and console output inspector. The project navigator sidebar is simple and powerful: you can manage your files and folders with ease. The command palette helps you find commands by text. The search widget has a powerful auto-complete feature to search and find your files.

  • Extensible and configurable: There are many extensions available for every language supported, including syntax highlighters, IntelliSense and code completion, and debuggers. There are also extension to manage application configuration and architecture like Docker and Jenkins.

  • Integrated with Git: You can visually manage your project repositories, pull, commit and push your changes, and easy conflict resolution.( there is support for SVN (Subversion) users by plugin)

10 upvotes·51.7K views

Decision at Kokoen GmbH about ExpressJS, Node.js, JavaScript, MongoDB, Go, MySQL, Laravel, PHP

Avatar of ASkenny
CEO at Kokoen GmbH ·

Back at the start of 2017, we decided to create a web-based tool for the SEO OnPage analysis of our clients' websites. We had over 2.000 websites to analyze, so we had to perform thousands of requests to get every single page from those websites, process the information and save the big amounts of data somewhere.

Very soon we realized that the initial chosen script language and database, PHP, Laravel and MySQL, was not going to be able to cope efficiently with such a task.

By that time, we were doing some experiments for other projects with a language we had recently get to know, Go , so we decided to get a try and code the crawler using it. It was fantastic, we could process much more data with way less CPU power and in less time. By using the concurrency abilites that the language has to offers, we could also do more Http requests in less time.

Unfortunately, I have no comparison numbers to show about the performance differences between Go and PHP since the difference was so clear from the beginning and that we didn't feel the need to do further comparison tests nor document it. We just switched fully to Go.

There was still a problem: despite the big amount of Data we were generating, MySQL was performing very well, but as we were adding more and more features to the software and with those features more and more different type of data to save, it was a nightmare for the database architects to structure everything correctly on the database, so it was clear what we had to do next: switch to a NoSQL database. So we switched to MongoDB, and it was also fantastic: we were expending almost zero time in thinking how to structure the Database and the performance also seemed to be better, but again, I have no comparison numbers to show due to the lack of time.

We also decided to switch the website from PHP and Laravel to JavaScript and Node.js and ExpressJS since working with the JSON Data that we were saving now in the Database would be easier.

As of now, we don't only use the tool intern but we also opened it for everyone to use for free: https://tool-seo.com

10 upvotes·1 comment·44.8K views

Decision about ExpressJS, Flask, Sinatra, Node.js, PHP, Python, Perl, Ruby, Java, C++, Piwitch, SipWitchQt, Bayonne

Avatar of tychosoft
Chief at Cherokees Of Idaho ·

My view of the enterprise software stack I think is different than most. I find that I use C++ and #Qt in many of the roles most used Java and typically in #SipWitchQt and #Bayonne. I also have come to adopt Ruby in those other places where I had used Perl, Python , and PHP in the past, and certainly in preference to Node.js. In particular I am starting to really like Ruby and Sinatra over Python and Flask or Node.js with ExpressJS for writing quick web api and microservices, hence why I am using Sinatra in #PiWitch going forward. I do not pick a language because of popularity, but rather based on whether I can be effective in it for the problem I am trying solve.

7 upvotes·3 comments·53.9K views