endian

endian

Member Since 1 Year Ago

Experience Points 3,620
Experience
Level
Lessons Completed 0
Lessons
Completed
Best Reply Awards 3
Best Answer
Awards
  • Start Your Engines Achievement

    Start Your Engines

    Earned once you have completed your first Laracasts lesson.

  • First Thousand Achievement

    First Thousand

    Earned once you have earned your first 1000 experience points.

  • One Year Member Achievement

    One Year Member

    Earned when you have been with Laracasts for 1 year.

  • Two Year Member Achievement

    Two Year Member

    Earned when you have been with Laracasts for 2 years.

  • Three Year Member Achievement

    Three Year Member

    Earned when you have been with Laracasts for 3 years.

  • Four Year Member Achievement

    Four Year Member

    Earned when you have been with Laracasts for 4 years.

  • Five Year Member Achievement

    Five Year Member

    Earned when you have been with Laracasts for 5 years.

  • School In Session Achievement

    School In Session

    Earned when at least one Laracasts series has been fully completed.

  • Welcome To The Community Achievement

    Welcome To The Community

    Earned after your first post on the Laracasts forum.

  • Full Time Learner Achievement

    Full Time Learner

    Earned once 100 Laracasts lessons have been completed.

  • Pay It Forward Achievement

    Pay It Forward

    Earned once you receive your first "Best Reply" award on the Laracasts forum.

  • Subscriber Achievement

    Subscriber

    Earned if you are a paying Laracasts subscriber.

  • Lifer Achievement

    Lifer

    Earned if you have a lifetime subscription to Laracasts.

  • Laracasts Evangelist Achievement

    Laracasts Evangelist

    Earned if you share a link to Laracasts on social media. Please email [email protected] with your username and post URL to be awarded this badge.

  • Chatty Cathy Achievement

    Chatty Cathy

    Earned once you have achieved 500 forum replies.

  • Laracasts Veteran Achievement

    Laracasts Veteran

    Earned once your experience points passes 100,000.

  • Ten Thousand Strong Achievement

    Ten Thousand Strong

    Earned once your experience points hits 10,000.

  • Laracasts Master Achievement

    Laracasts Master

    Earned once 1000 Laracasts lessons have been completed.

  • Laracasts Tutor Achievement

    Laracasts Tutor

    Earned once your "Best Reply" award count is 100 or more.

  • Laracasts Sensei Achievement

    Laracasts Sensei

    Earned once your experience points passes 1 million.

  • Top 50 Achievement

    Top 50

    Earned once your experience points ranks in the top 50 of all Laracasts users.

18 Jun
6 months ago

endian left a reply on Vue Js Not Passing Html Validation

??? params like v-on:click are still in the HTML after rendering.

02 Jun
6 months ago

endian left a reply on NodeJs

Node.js is the bomb. I quite 15+ years of working with PHP because of Node.js, and am a much happier programmer as a result.

endian left a reply on AdonisJs 3.0 Is Out - Laravel For Node.js

Adonis has made 2018 an amazing year for me.

I have been working as a dev 20+ years and have 15+ years with PHP. I've been wanting to drop PHP for awhile. The language is ugly, and the code I write with it isn't that portable. Only useful for web.

Node.js has been on my radar for awhile. JS is just awesome now. Having it on the front and back end means I write less code. A lot of the code I write is now usable on desktops with electron and for mobiles using React.JS. You write small decoupled modules, and boy, you can reuse them in so many contexts. Just powerful. Also, having my mind on JS only, instead of constantly switching between PHP and JS means I waste less time remembering how to do things. I can really learn one language in detail.

Writing JS node modules feels like writing code that will last for years to come. I never had that feeling with PHP.

I looked at Express and Koa, but went with Adonis for the projects I am working on this year. A microframework like Koa is nice since you can pick your pieces, but Adonis made a lot of good choices, so it works well for what I need at the moment. Then only thing I don't like so much is Antl, the module for translations.

20 May
6 months ago

endian left a reply on Which Laptop To Buy?

You guys don't care about Unix compliance? It sucks when you open a terminal and the commands aren't unix compliant.

16 May
7 months ago

endian left a reply on Which Laptop To Buy?

Thing is, you have to learn Javascript anyways since it's the master of the front end. No choice. And, with ECMAScript 6 (ES6), you get a lot of goodies like async/await. Node.js is really sweet and uses the unix philosophy of software building.

If you do want to try JS at one point, and easy way to switch might be to use AdonisJS which is a Node.js framework built very much like Laravel. So, every concept you use from Laravel (which mostly comes from Rails), you can apply in AdonisJs. It's basically laravel for JS. https://adonisjs.com

BTW - I'm not associate with AdonisJS in anyway. I was a long time PHP dev. Since 1995. I did no framework spaghetti code, then KohanaPHP, then Laravel. I got tired of PHP and wanted to have one language only, which is why I switched to JS.

I think you are making the right choice for you machine. Being Unix-compliant has many advantages.

15 May
7 months ago

endian left a reply on Which Laptop To Buy?

I would go with Mac-OSX or LInux. Any serious dev deserves to be on a Unix-compliant machine.

Since you're early in your career, I'd also consider switching to Javascript instead of PHP. The reason being you'll end up have much more reusable code as the years go by. In 2 years, I have more reusable code with Javascript than I have in PHP with 20+ years. JS works for the frontend, backend, for mobile devices (ReactJS) for desktop (electron), and other places as well. With node.js you write small reusable modules. So, if you write a module to, let's say - do some fancy things with arrays because you need it in your frontend - well, a year later that same piece of code might be useful for your backend code. Or, in that iphone app your are building with React. Something to seriously think about.

endian left a reply on Thanks And Farewell

bashy - koa2?

CJJ - I like koa2 instead of express for micro stuff. I just like adonis sometimes to get off the ground quickly and prototype.

endian started a new conversation Thanks And Farewell

I want to thank everyone for the help I received in the last year.

I was coming from KohanaPHP and thinking of using Laravel, so I tried the framework and had many questions that were promptly answered. Amazing community.

For reasons of simplicity and code reusability, I decided to jump ship and start using Node.js with koa2 (micro-framework) and Adonis (meso-framework) for my future projects. I was tired of re-writing code, and the Unix Philosophy employed by node.js cured that. I have more reusable code after a year than I have doing PHP for 20+ years. One language helps - the fact that it works in many contexts helps a lot (web, mobile via ReactJS, desktop via Electron). I feel I never mastered PHP even after 20+ years of using it. Now my plan is to focus on learning one language in absolute depth - Javascript. I'm a musician and part time coder, so I needed to specialize my focus while coding.

This community is awesome, and I hope you all do awesome projects in 2018!

Cheers, and thanks again.

12 May
7 months ago

endian started a new conversation How Long For A Newbie To Setup User Auth And User Profile With Laravel?

How long would it take a newbie to setup user authentication and user profiles with Laravel? Estimation please. Simple auth with username and password, also with system for lost password recovery. A simple user profile with picture and description.

07 May
1 year ago

endian left a reply on Vue And JavaScript's Bad Practices

It's important to differentiate between a website and a web application.

With a website, progressive enhancement is the way to go. It should work with only HTML. Adding CSS enhances the look, adding Javascript enhances client side usability. The HTML should be semantic as you are feeding documents to the client.

With a web application, Javascript will most likely be required. You won't really be feeding a document to the client, so semantic markup is not really the point. In such cases, using React or Vue to fill a root div is fine.

Now that Javascript has grown up and all browsers are able to handle it well, libraries like Jquery that were made to fix cross browser issues are essentially dead. It's much better to use pure JS when possible. This is especially true in a world of mobiles when bloated (now bloated because we no longer need cross browser fixes) libraries like jQuery needlessly slow things down. You can use this site to find pure JS code. https://plainjs.com

You should use Unix philosophy when writing Javascript code. Make small reusable modules that do one thing well. Make them node compatible. Be wary of NIH (not invented here) syndrome. Check what exists in the NPM package world before writing code for nothing. Be lazy, don't code when you don't have to.

01 May
1 year ago

endian left a reply on Increment_id

Have one product table with a normal incrementing ID. Have a field that specifies who created the product. That should be a user_id. When you want to list products on the site, you look for those that have a user_id that refers to an admin.

30 Apr
1 year ago

endian left a reply on What Made You Choose PHP As A Server Side Language?

I'm not a big fan of frameworks myself. Especially big ones. Lots of bloat. I think the best way to organize code is to use Unix philosophy and go modular, much like node JS does. With composer, it's easier than ever to write PSR compliant PHP code with little dependencies.

endian left a reply on What Made You Choose PHP As A Server Side Language?

Great points!

I also seem to come back to PHP, it's ease of deployment, the quickness with which I get things done. At the same time, it does feel ugly compared to other languages. After all, it's a templating engine that grew into a language.

29 Apr
1 year ago

endian left a reply on How To Use Auth::check()

In blade you can use a similar structure. Just replace the HTML with what you want.

@if (Auth::check())
        <p>You are logged in.</p>
@else
        <p>You are not logged in.</p>
@endif 

endian started a new conversation What Made You Choose PHP As A Server Side Language?

I started doing web back in the day when PHP was the only real server side language for the job. Now we have many choices - Ruby, Python, Go, Scala, Javascript (Node.js), PHP, etc...

I still use PHP daily. For money, I support sites on systems like Wordpress, Joomla, etc... PHP 7 is tasty in terms of speed, and it's nice that PHP can be easily deployed on cheap servers.

However, I started using Python for some sites. Using the Flask micro-framework. It's nice to use a cleaner language. I'm also tempted to look into Go and Scala. The idea that the libraries I create can be used for other applications than web is attractive (PHP stuff is mostly web only).

Do you guys use other languages than PHP? Why or why not? What parts of PHP do you love, or hate?

20 Apr
1 year ago

endian left a reply on A Post Shouldn't Be Saved If It Doesnt Belong To Any Category. How To Approach That?

You can still validate data even if it comes from bots.

19 Apr
1 year ago

endian left a reply on How To Add Content From Database To A Modal

For pure speed, and more maintainable and long lasting code, you should a modal object from a vanilla JS library.

Here's a good one: https://phuse.ca/vanilla-modal-plain-javascript-modal/

You can search for others here:

https://plainjs.com/javascript/plugins/

endian left a reply on Understanding The 'this' Keyword Inside Vue Instance

You can look at Vue's code in Vue.js to find out how Vue digests the configuration object you are passing to the constructor.

On line 4010 you have

function initGlobalAPI (Vue) {
  // config
  var configDef = {};
  configDef.get = function () { return config; };
  {
    configDef.set = function () {
      warn(
        'Do not replace the Vue.config object, set individual fields instead.'
      );
    };
  }

Etc...

endian left a reply on Use Laravel Api Test On Slim Project

In the long run, you'll write longer lasting more maintainable code if you focus on using decoupled PSR packages that have the fewest dependencies possible.

If you are coding for a framework, then your code won't be reusable and will break with framework updates. Not fun. Been there, done that.

So, I applaud you in using Slim + packages.

Sometimes we are attracted by the features of heavily coupled code, but that comes with a big price to pay.

endian left a reply on Use Laravel Api Test On Slim Project

Unfortunately, testing is Laravel is tightly coupled with the framework.

Go to vendor/laravel/framework/src/illuminate/Foundation/Testing

All the testing stuff is there. If you open TestCase.php you'll see everything that is required for it to run.

I would forget about that and instead create a PSR package that uses PHPUnit do to tests like you want.

Write something decoupled, for the entire world to use. The future is micro-frameworks + decoupled PSR PHP libraries. You're on Slim, so already half way there.

endian left a reply on My Developer Friend's Opinion On Laravel

@scopefragger

Great point scopefragger. Things change fast in the programming world.

Frameworks are at the highest order of complexity, so it's no wonder they come and go. Next would be packages, and after that languages.

That means a PSR PHP package as a longer shelf life than code coupled to a framework.

It's a good idea to strive for decoupled code if you care about long life.

endian started a new conversation Sharing A Node-module For Creating And Manipulating JSON Trees.

I'd like to share a node module I just finished. It's a simple object that can be used to create and modify JSON trees. It's small, tight, and fast, and has some methods to run callbacks up and down the tree which are pretty powerful. I needed it for a small website I'm working on, so I thought I might as well share it.

https://github.com/pelevesque/oak

17 Apr
1 year ago

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

Yes, not making it dependant on a specific framework is nice, but if I'm just making Laravel websites, why should I write my code in such a way that it can be used elsewhere. When that day comes I would refactor at that point.

Because portable code is a a very powerful thing, and there's absolutely no reason not to do it apart from being ignorant or lazy. You should treat the framework, Laravel in this case, as your app's delivery mechanism, not your app.

With composer and PSR, we no longer have a problem writing packages in PHP. This alone killed the main raison d'ĂȘtre of monolithic frameworks like Laravel. Taking a small core and adding packages really is the correct way to program. It follows Unix philosophy. If those packages have few dependencies, they it's even better.

If your code is well-formed into a decoupled PSR package, then it can be shared with the community. This means bugs can be fixed by others, others can use it in their own projects, etc... Win for everybody. Easier to maintain. When one of your site upgrades the Laravel version but your other sites don't, it won't matter. You sill have one library to update. If you're writing coupled code, then you end up with code that will need to adapt with different versions of Laravel, etc... Not a good thing for most code.

It's the common discussion of: this might change in the future but it might not, should I spent more time now making it future proof for a future that might not arise or do I just refactor later down the line when that time come.

You're defending a bad programming habit with a false dichotomy that does not even apply in this case. It doesn't take longer to write proper decoupled code. I just takes the discipling to form proper programming habits.

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

Your code should not even be Laravel code. It should be as decoupled from the framework as much as possible. You can do PSR librairies that are framework agnostic and portable anywhere.

16 Apr
1 year ago

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

[quote]But, you might pay for that faster take off later down the road if your code is not flexible and updatable and scalable, etc...[/quote]

Won't that be the case with Laravel too? I took a few lessons and found out that Laravel does a lot of stuff with very few lines of code; and that's .a good thing. But from where I am right now, Laravel code looks a bit more complicated compared to WordPress.

It could. My point was not that Wordpress is less flexible than Laravel. I don't know the specifics of your project, so I cannot know which is the best tool that will provide you with the best maintainable code in the end.

For example, let's say you have an app that uses almost all of Wordpress functionality out of the box + plugins that already exist. What you did was put this together and feed it content. In this scenario, you have very little code of your own. Well, then Wordpress would most likely be the best solution. Maintenance will be easy, just update Wordpress, etc...

Your strategy needs to take everything into account, not just coding like I said above. Forming a user base, etc...

The point I wanted to stress is that building 50 apps is not the same as 1 app. If you don't have the best tool for 1 app, it's not so bad. You can refactor later. But, with 50 apps, how sad it would be in 1 or 2 years if you realize you would have been much better off with some other base system. That's why I think it's important to choose wisely in this specific case. Again, Wordpress might very well be the best choice. It depends on many many things. The fact that you already know Wordpress well, and have little coding experience is one of the big factors to choose Wordpress.

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

So, like I said, I like quick to launch philosophy.

However, in your case, we are not talking about 1 app, but many apps. You talked about 50. So, just prototyping something with the framework you know best and which goes the fastest might not be the best choice since it could be hard to refactor later.

In your shoes, I would take lots of time to really pick the best base set of tools. It's the biggest design choice for your entire project.

Iv'e done many project cycles, and I can tell you that in your case, maintenance will be a major issue. With 50 apps you must keep alive and well, you want really maintainable code. You must think about that.

At first, Wordpress will help you code very fast. No doubt. But, you might pay for that faster take off later down the road if your code is not flexible and updatable and scalable, etc...

I'm not saying that Wordpress is a bad choice. It might be the best choice. Just giving you things to think about.

If you're not an experienced programmer, I would definitely pay for consultation. Pay a programmer to review your project so he really understands it. Then he can better gauge what you are getting into and what your company should be using based on your skill sets, your goals, etc...

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

I'm not sure what your apps are, and what your development strategy is (quick to release, or you want to take longer to create really polished and maintainable apps?).

I'm a big fan of quick release for my personal projects. The web is very competitive and even amazing projects sometimes need to be lucky to take off the ground. For those reasons, I like to launch very quick (1 month or 2 max of development) then see if the app takes off. If yes, then I refine and keep going. If no, I abandon. There's a businessman from Singapore who released 12 apps in 1 year. 1 a month. As a kind of test. He had 12 ideas and wanted to try them out. 2 apps survived.

I use Laravel for quick prototyping. Apps that make it get transferred to micro-frameworks with specific components.

So, if that's the plan, I think you should stick to what you know - Wordpress. If it's helping you release quick to test the waters and get clients hooked, this may be far more important than having the best possible code base. Time is money.

Realize there are two main approches... Curative or preventive. Curative you cure problems after they happen, preventive you create clean maintainable code in the hopes of preventing problems. Curative is much cheaper in the short terms as you get your apps out much faster, but preventive is much cheaper in the long run.

I just worked on a 10 year old website that was programmed cowboy style (not clean maintainable code, but done super fast) and it had hit a big wall. They could no longer scale without introducing heaps of bugs.

endian left a reply on Anyone Try The Micro Framework Equip?

Hi guys, thanks.

Right. Equip hasn't been updated in 8 months. Not sure if it's because it's small and done right, or because development has stopped, etc... The main dev, Woody Gilk, is a really good PHP coder.

The cool thing about Equip is that it's built for PHP 7 and uses the ADR pattern instead of MVC.

I haven't tried it out yet, but I might do that next weekend.

Ya, I created a bash script for Laravel to strip it nude to its bare minimum. (At least the bare minimum I want to work with).

i can't stand installing projects that assume I'll be using such and such a library, especially a server side Framework that assumes what I'll be using for frontend.

https://github.com/pelevesque/laravel-scripts

I use Laravel for prototyping, but I want to move to a more modern pattern than MVC.

endian started a new conversation Has Anyone Tried The ADR Pattern Instead Of MVC?

As anyone dabbled with the ADR pattern? What did you think?

https://github.com/pmjones/adr

endian left a reply on Anyone Try The Micro Framework Equip?

Thanks. Yes, I know about Lumen. It's mostly good for stateless APIs. Sometimes, I want to build feature rich websites, but choose my components wisely. That's why I use Slim3 for those projects. Equip seems nice because it's created by the creator of Kohana, but it doesn't seem to be developed any longer.

I know Equip and opulence are made for PHP 7, do you know if this is the case for Lumen?

endian started a new conversation Anyone Try The Micro Framework Equip?

I use Laravel for quick prototyping and more involved websites, but for more custom clean builds I like micro-frameworks. I used Slim3, but just discovered Equip and was wondering if any programmers here tried it. What are you thoughts? It was recommended by the founder of Kohana.

https://github.com/equip/framework

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

It's like if you're an architect. It really depends on the projects.

Using Slim3 + the packages you need is like designing a house from scratch. You do the planning first without constraints, then you add the stuff you need to make it happen.

Using Wordpress is like starting with pre-built plans you have for suburbs. Most of it is done for you, then you just choose from some options. You can build a lot of houses really fast this way, but they aren't clean and special like the really custom creations you made with Slim3. And, as soon as your houses start to differ too much from the pre-built plans, then you get into really big trouble.

Laravel is somewhere in between.

endian left a reply on Looking For Opinions From Developers Who've Worked On WordPress And Laravel

It depends on many factors like: what you're building, how much time you have, does learning proper programming matter to you or do you just want to dish out websites, etc...

Just know that the higher you start on the complexity scale, the more dependencies your project has. Lowest complexity would be starting with just PHP, then it's adding a micro-framework like Slime3, then adding packages to that, then going to a bigger framework like Laravel, and finally to CMS systems like WordPress. Usually we build from bottom up, not top down.

Ideally, you design your app, then you decide the tools you need for it. You don't start with the same tool for all your apps (since they all have different requirements). What you want to avoid is fighting with the tools you use. If your projects use Wordpress how it's intended, and you don't feel that you're fighting with it (trying to make it do things it does not do well), then your only problem is that you're probably using a system that's more complex than you need.

Would I build sites using Wordpress on my personal projects. No. The sites I do for myself and my business I want done with proper maintainable code that is as simple as possible. No bloat, no unecessary glue, no librairies I am not using, etc...

Would I use Wordpress to make a site for a client. It depends. If his budget is tight, then I probably would. The client will lose speed and flexibility, but it will be done cheaper and faster. If it's not a critical app that's built to last, then it should not be a problem.

15 Apr
1 year ago

endian left a reply on A Glorious Return To Vanilla JS

@jlrdw

I found a great plain JS date picker if you need help getting weened of jQuery.

https://plainjs.com/javascript/plugins/datepickr-40/

And, the github page:

https://prevwong.github.io/drooltip.js/

endian left a reply on I Would Like To Know Your Opinion

@Fourstacks and @danielesposito

Fourstacks speaks a lot of sense.

There are many ways to look at it, but these various viewpoints don't come about with a whim. They are guided by intent. It really matters what your primary goal is.

If I were in Fourstacks situation (knew wordpress, and a bit of PHP, had a particular project to do, wanted to organize his code better) then I would have done the same and chose Laravel.

There are many people with many different goals programming in PHP. Many people just want to get a website done with pretty clean code, and don't really care if the librairies they use is the best possible one for their project. They don't want to waste time deeply learning PHP and looking at many different librairies, etc... and that is perfectly fine. They want to get a website done. Those people should use Laravel or another framework and just stick with it. Just use the same framework everytime.

If your goal is to become a really good PHP programmer, then the road is different. By really good programmer, I mean someone who would be able to create a framework like Laravel. There are not that many.

Just one rectification of what Fourstocks wrote

but the point of micro frameworks like Lumen is to build small, fast JSON APIs that will (generally) as as a microservice for some larger application (or act in concert with a bunch of other smaller services).

I disagree with this. This is one use of a micro-framework. Another is to build really complex sites, and get the same type of functionality you would with Laravel, but to take the time to choose the best librairies for your particular project. With a library like slim3, you can start with no complexity, then add the parts you need to build up to very complex things. The difference is it's more customized. You chose all the librairies, not the programmers of Laravel who did not know what app you wanted to make.

endian left a reply on My Developer Friend's Opinion On Laravel

If your main goal is to make web apps, then I say just start with Laravel.

if your main goal is to become a great PHP programmer, then I suggest you start by learning PHP well, then download many different PHP frameworks - Silex, Slim, Larael, Lumen, opulence, symphony, kohana, etc... and read their source code. Try to see how they were made, what are the different philosophies.

These 2 goals are different, and each has value. Many web devs that use PHP are masters at creating awesome websites, but could never create their own framework like Laravel. The same way many people use javascript to program things for their apps but could never program a library like Vue.js.

It depends what you want to do.

endian left a reply on My Developer Friend's Opinion On Laravel

Your friend has a point, and it seems quite clear when you read this forum.

For many here, the starting point of their apps is Laravel, which is absolutely the wrong way of creating a good piece of well-written maintainable software.

The first step in creating your app should be to design it. Create the specs. What does it do, how many pages does it have, what are the functionalities on those pages, etc... What functionalities will be in the first release, what functionalities do you know will be required later on, etc... Does speed matter, does deployment strategy matter, is there a small team working on it, or big team, etc... ?

Once you know what you want to build, then you choose your tools. This means Laravel won't always be your choice. Remember that Laravel is a whole macro-framework - pretty complex. Frameworks are at the peak of complexity in the software world. You have C, PHP build over that, librairies built in PHP, then Laravel packaging these PHP librairies in a certain way.

Choosing your tools on the server side should start by establishing things like what PHP version you should use and what librairies you will need. Hell, you might even be a step before that and choose the language. Sometimes PHP is not the right choice. It depends on the factors. You might be better off programming your app in Python, or Ruby.

Following Unix programming philosophy, your goal should be to remain as decoupled as possible and use the smallest librairies with the fewest dependencies you need. For example, if your application requires authentication, you should use a library that does the type of authentication your app requires. If there are many choices, the auth librairies that are smaller and have fewer dependencies should be prioritized over other bigger ones. The goal is to keep complexity at a minimum. Of course, documentation is important too, and how maintained the library is. If you find a PHP auth library that does what you want, is super small, has no dependencies, it still might be a bad choice if the documentation is horrible and the last commit was done 3 year ago.

Much like the Arduino in the hardware world, Laravel is a system that makes many choices for you. If packages many libraries - auth, validation, router, etc... and glues them together in a certain way. The advantage is that you can start faster (don't have to choose librairies), has a large community of people using the same combination of librairies, has docs that cover the whole system. The disadvantage is starting your app with a high order of complexity you might not need.

Symphony is not really a framework. It's like https://www.opulencephp.com - a series of librairies. Most of them are decoupled, which is what good programmers love. Laravel uses many symphony librairies because of this.

In the end, it depends what your goal is.

If software programming is a hobby and you just want to get sites done quickly without worrying too much if they are built with the best tools, then I suggest you use Laravel + jQuery or Vue.js, etc... and get on your way building apps. The same way I would suggest someone who just wants to make motors work for some art installation to use Arduino.

If your goal is to become a great software developper, then I suggest you don't think 'Laravel' every time you start a new web project. Like I described above think 'what does my project want to do, how can I spec it out'. From that information, then you choose the correct tools for the job. It might be Laravel. But it might be slim3 with a few components, or Lumen, or opulence.php, it might even be straight up PHP for simple sites.

Good programmers start at the bottom and build up only adding the complexity they need (Programming is all about keeping complexity to a minimum).

Lesser programmers start at the top of complexity (a full fledged framework for every project) then try to add what they need.

endian left a reply on A Glorious Return To Vanilla JS

Sometimes it's crazy obvious.

Take jQuery's $.parseJSON()

Modern Javascript has JSON.parse() which does the exact same thing.

endian left a reply on A Glorious Return To Vanilla JS

For people who want to harness the power of Vanilla JS, here's an amazing site. It shows you how to code jQuery methods in pure plain JS.

If you're loading jQuery for just a few methods like extend(), clone(), etc... then this is gold.

Here's the ajax functions:

https://plainjs.com/javascript/ajax/

endian left a reply on A Glorious Return To Vanilla JS

I have lots of code on github. Should clean it up though. I'll post a link here soon enough.

Yes, back in 2002 vanilla JS was hell. I agree. We had to use libraries like jQuery at that time, but javascript has come a really long way since then.

And things are only getting better!

An example, the new assign() method in ES6 completely replaces extend() from jQuery with a native method. That's awesome! Not yet available in all browsers, but soon will be.

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/assign

endian left a reply on How To Deal With Inconsistent Results When Consuming An API

I'm sure some others have had that problem. Amazon must be a popular API. You should take some time to search the web for some php librairies meant to beautify the output of Amazone's API.

endian left a reply on A Glorious Return To Vanilla JS

You certainly shouldn't reinvent the wheel. I wasn't talking about UI stuff as noted in my OP. You should use jQuery, or Elements, or UIkit, etc... for UI components such as date pickers. Unless you need a special kind of date picker that does not exist, it makes little sense to program one yourself.

I'm talking about how jQuery was used to deal with browser incompatibilities. 10+ years ago, it was hard to write in Vanilla JS and have cross browser compatible code. We used jQuery for things like extend(), clone(), etc... Now we can easily write these in Vanilla JS with full confidence they will be cross browser compatible.

I just finished a 700 line JS library that is used to enhance the functionalities of a go board. A few years back, without a thought I would have pulled in the JQuery core and programmed on top of that. Nowadays, I use Vanilla JS for those tasks. So much cleaner and reusable.

endian left a reply on A Glorious Return To Vanilla JS

I dropped JQuery completely. I use axios for ajax, and Vue.js for ui stuff. Most of my librairies are now vanilla JS and I love it.

endian left a reply on How To Deal With Inconsistent Results When Consuming An API

The first step is to avoid such APIs if possible. Don't deal with badly designed third-party software if you don't have to.

If you must play with the devil, there's no shortcut I believe. You'll have to massage the APIs output into submission.

Programming is all about reducing complexity. If the API doesn't reduce the complexity of its output, then you'll have to do with unfortunately.

endian started a new conversation A Glorious Return To Vanilla JS

How many of you are making a return to vanilla JS when writing functionality scripts (not UI stuff like when you use Vue.js)?

JQuery and Mootools were favorites of mines in the old days. They really helped with browser compatibility issues with methods like extend(). Now that browsers are more powerful, more standard compliant, and that javascript has been enhanced, these JS libraires seem less and less useful.

If feels amazing to finish a 500 line library in Vanilla JS that has no dependencies. Makes for extremely portable and reusable code.

Coding for the web is becoming more fun as our tools are bettered. It's such a joy.