📜 ⬆️ ⬇️

Laracon 2017 - a brief overview and a bunch of useful links

laracon-2017


I attended the Laracon conference for the first time in person and, I must say, I got a very pleasant experience there - perhaps even more enjoyable than I expected. The conference was well organized and the reports were diverse, informative and effective. The first day was devoted to technical issues and mostly revolved around Laravel. The second day was diluted with speeches on a variety of topics, quite entertaining and thought-provoking.


Personally, I liked the opportunity to meet with a whole bunch of people with whom I communicate with Twitter.


Another interesting point is the opportunity to make a small “food pilgrimage” in New York. Larakona also had a lot of free food, and I even tried it a bit, but I wasn't going to miss this opportunity.


This article will be a brief overview of what I learned in the presentations. Unfortunately, I was not able to listen to a block of reports from the Science Fair. I did not take notes and could not provide a detailed report on each statement. There is a lot of material on some performances, but not enough on others.


Day 1


Freek Van der Herten , Spatie


Topic : Creating a control panel with Laravel, Vue.js and Pusher


I was already familiar with the material that Frick covered in his speech, since I had already read a blog entry on this topic. And yet, I learned a lot of new things, since it is live kodil to show how time / weather components, packagist statistics and Twitter feed are made.


He also presented impressive Spatie open source statistics.


References :



Tom Schlick


Topic : How to build multi-user applications


The presentation hit the mark, because half the audience dreamed of building their own cool SaaS application. Tom talked about various database strategies: He compared how one can be used and how several can be used, talked about their strengths and weaknesses. He also spoke about his other considerations: for example, about how to segment the various components of his application (queues, console commands, migrations, file storage, cache, etc.) and domain assignment strategies. I will share the details below, as his presentation is already publicly available.


Tom mentioned on his Twitter account that he would be speaking for the first time, so for the first time it came out quite well.


References :



Adam wathan


Topic : CRUD design


Adam in his speech focused on the need for controllers to be as RESTful as possible. First, he showed a screenshot of Basecamp 3, which David Heinemeier Hansson (DHH) mentioned in his tweet:


basecamp-3
https://twitter.com/dhh/status/647163196839739392


Here you should pay attention to the following indicators: the number of controllers, a small number of methods per controller and the average number of lines of code in each method.


Adam wrote code on the stage for a demo application - Casthacker. In his route file there were two controllers - PodcastsController with 13 methods and EpisodesController with 5th.


He reworked them into additional controllers using the following principles:



The main idea of ​​the demo was that you never need to write custom actions. Limit controller methods to 7 CRUD actions: index , create , store , show , edit , update and destroy .


 // : //  PodcastsController@publish PodcastsController@unpublish //  PublishedPodcastsController@store PublishedPodcastsController@destroy //  PodcastsController@subscribe //  SubscriptionsController@store 

His presentation and demo application can not be viewed online, but he tweeted that he would soon post it. But if you are already subscribed to his Test-Driven Laravel course, then you will find this topic in the “Publishing Concert Drafts” section.


References :



Maxime Locqueville, Algolia


Topic : Laravel Scout + Algolia + Vue


I was impressed by the presentation of Maxim, where he showed live how easily you can build a search interface for your existing project. In about 15–20 minutes, he built a functioning search interface for the list of speakers at the conference. To do this, do the following:



If you didn’t know, Algolia has the option to search the Laravel documentation .


References :



Evan You, Vue


Topic : State of Vue for 2017


The presentation of Vue seemed to me a bit restrained, and for good reason, since Vue 2.x is now in a stable state and in the near future there will be no releases with new cool features.


The first VueConf conference was held in Poland in June.


Evan mainly talked about Vue growth: showed impressive statistics from Github (61.2k + stars), NPM (622k + downloads per month) and Chrome Devtools (228k + active users per week). He also gave examples of the growth of the Vue ecosystem. The most remarkable of - Weex , mobile UI-framework.


I also noted a number of points:



References :



Nils Adermann, Composer / Packagist


Topic : Dependency Management


I missed a rather large chunk of this talk. It looks like Private Packagist (or Satis) was offered there as a solution to the problem of package peacekeeping and risk management of software dependencies.


In the second half of the report gave good tips for the composer:



An important clarification to the last point: if you work in a team, you will have problems with composer.lock only if everyone runs the composer update in their branches at the same time without any purpose. If you follow these two rules, problems will rarely occur:



References :



Taylor otwell


Topic : Laravel Horizon (maybe there was something else there, but it was this topic that everyone had in mind)


Finally, it's time for the main report. Taylor went through the entire list of Laravel 5.5 features. I have included Laravel News and Laracasts in the list where you can explore all the features in detail. I was particularly pleased with the custom validation classes. I wrote about them earlier in another article .


But all eyes were on Horizon. When he was finally shown to the public, I was very happy, because this is exactly what I need for my current work. Horizon is a Laravel package that helps manage queues through a configuration file. And it has a great interface. If you often suffer from the fact that you have to manage several failed tasks simultaneously via the command line, then you will like Horizon. One caveat: it only supports the Redis driver, but this is open source, so the community may soon add support for other drivers.


Horizon website launched on the 2nd day of the conference: https://horizon.laravel.com


Taylor also hinted that there will be more updates soon. Almost certainly they will be associated with the cloud.yml file, which he had in the root folder of the demo application, and the cloud deploy command, with which he made changes to the configuration.


References :



Day 2


Matt stauffer


Topic : Laravel Setup


Matt is so chattering that the joke about re-watching his performances on Youtube at a speed of 0.5 is not a joke.


He spoke about the many basic and advanced techniques of customizing Laravel to customize it for the special needs of your application. His presentation is available in the list of links below, so I will not repeat the material.


What I was particularly hooked about in his presentation was his thoughts about the readability of the code:



I remembered the illustration that I saw in the book “Clean Code” by Robert Martin (Uncle Bob):


clean-code


A source:
http://www.osnews.com/story/19266/WTFs_m


I suppose a bad readability of the code will mean that the rate “what the fuck is this ?!” per minute will be quite high.


References :



Sean T. Larkin , webpack


Topic : webpack - main ideas and not only


Sean very coolly explained what a webpack is for backend developers who mostly use it with Laravel Mix.


webpack is a module builder. It integrates JavaScript modules (ES6, CommonJS and AMD) to run in a browser. Engo has a modular architecture based on plugins. 80% of webpack is built on plugins.


The rest of the report discussed plug-in components and “tapable” elements.


Materials may be useful if you are developing plugins or if you are trying to debug a module, but in most cases it will cover Laravel Mix from all these problems.


You can help webpack developers if you support them on the Open Collective website.


References :



Mathias Hansen and Michele Hansen , Geocod.io


Topic : Running and scaling a third-party project


This presentation was prepared by the founders of Geocod.io, who by special coincidence of circumstances turned out to be husband and wife. In their report, they spoke about their experience in launching and scaling a third-party project.


Many of the ideas that they voiced are quite obvious. For example, solve your own problem, create a MVP, ratify your product, know your market, do not scale too early, etc. However, in addition to such ideas, they shared their own experiences, so it was interesting to listen to them. They also gave a couple of practical tips on how to transfer the company to the US, insurance and SaaS applications for customer service and analytics, which they used themselves.


References :



Laura elizabeth


Topic : Design Debugging


Laura's speech contained the right message for the right target audience. She led everyone to the idea that the redesign of the site should be approached from a developer’s point of view - to solve problems step by step. This approach facilitates the work for someone who does not have a natural inclination to design.


She showed how to choose the main color, the overall palette, typography (fonts, hierarchy, dimensions), indents, layout and how to shine at the end. All materials were very practical. For me, the bonus was the list of tools she used. I have listed them below.


References :



Justin jackson


Topic : How to create applications that people will buy


Justin's report was quite entertaining. It may have overlapped a bit with the previous report on a third-party project, but the approach was different.


Key thoughts of his report:



He also recommended a couple of books. Links to them you will see below.


References :



Jeffrey Way, Laracasts


Theme : Kill the Monster


Most people might find it interesting to listen to Jeffrey’s "Deep Analysis of the Color Theme I Use." Judging by the comments to his videos on Laracasts, people are interested in IDE topics just like the code itself.


Jeffrey sounded 9 reasons to kill the monster. At that moment I stopped taking notes, and therefore I do not have a detailed presentation of his material. The basic idea that I remembered (because he came back to it many times) is that all modifications of the code must be rude. This means that if some part of the code has ceased to suit you, then redo it in the simplest possible way. If after this your code is not better, do not be afraid to return to the previous version.


He mainly touched upon those topics that were covered to a greater or lesser extent on Laracasts: cleaning up the internal api, using single traits, reducing the number of conditions in views, events / listeners and query objects.


At the end, he gave a couple of interesting quotes. I especially liked the quote about the killing code. I found its source and added it to the links below.


If you need proof of the future, then you do not need the Terminator T-1000. You need Kenny from South Park. We need a code that can be killed easily and fun.


References :



Jack McDade


Topic : Deep Impact


The topic Jack was talking about was rather gloomy (at least the first half), but he still presented it quite easily and was able to convey his point of view. The key idea was that at a certain period you need to allow yourself to deeply focus on your work, abandoning the constant entertainment of modern life. We constantly walk around the edge and do not delve into real work, and at the same time we are very busy, but it should not be like this.


Depending on the point of view from which to look at it, his statement was either completely inappropriate, or it just got to the point, because the hall was full of people who were buried in their laptops or telephones. He also spoke about a learning model, which he called “Pay Forward.” With this model, you train three people, and each of them in turn trains three more, and so on. The report sounded quite appropriate for the end of the conference: he did not cover any technical issues, and yet made you think about some things.


References :



UPD: Uploaded videos https://streamacon.com/video/laracon-us-2017


')

Source: https://habr.com/ru/post/334918/


All Articles