Laravel is ideally suited for fluent PHP developers who want a framework that can be used to both rapidly prototype web applications as well as support scalable, enterprise-level solutions. I think where it is less ideal is where the client has an expectation of using a certain CMS, or of having a certain experience on the admin side that would perhaps be better suited to a full CMS such as Drupal or WordPress. Additionally, for developers who don't want to write PHP code, Laravel may not be the best solution.
If you are required to develop applications that are cross-platformed, Xamarin is a great tool to use. It will help save time and effort from your development team to be able to build applications seamlessly for android, IOS, Windows, and web on a single platform instead of requiring multiple tools to get the job done.
Xamarin allows you to write cross platform code. This allows companies to build apps more quickly by writing less code. Having code abstracted and reused across multiple platforms allows for more testing and less issues overall.
The ability to use Visual Studio is a huge plus. Visual Studio is one of the best IDE's available and being able to write cross platforms apps while in a great IDE makes everything less painful.
Xamarin is now free with a large company backing. This means that bugs on the platform get fixed more quickly and there is a large community of developers.
Significant learning curve. You cannot be an expert in a week. It takes many experimentations to properly understand the underlying concept. We ourselves learned it by using it on the job.
Too much to soak in. Laravel is in everything. Any part of backend development you wish to do, Laravel has a way to do that. It is great, but also overwhelming at the same time.
Vendor lock in. Once you are in Laravel, it would not be easy to switch to something else.
Laracasts (their online video tutorials) are paid :( I understand the logic behind it, but I secretly wish it would be free.
The eloquent ORM is not my recommendation. Let's say you want to write a join, and based on the result you wish to create two objects. If you use Laravel to do automatic joins for you, Laravel internally actually makes two calls to database and creates your two object rather than making one join call and figuring out the results. This makes your queries slow. For this reason, I use everything except eloquent from Laravel. I rather write my own native queries and control the creation of objects then rely on Laravel to do it. But I am sure with time Laravel will make fewer calls to DB.
Xamarin has been great for developing different projects efficiently and effectively. It's nice to reuse the core business logic across different platforms so that there are less to maintain and little replications are needed. The biggest benefit is that C# programmers do not have to learn a different language to do mobile development.
If you are required to develop applications that are cross-platformed, Xamarin is a great tool to use. It will help save time and efforts from your development team to be able to build applications seamlessly for android, IOS, windows, and web on a single platform instead of requiring multiple tools to get the job done
I never had to contact support for any help. Most of the problems we ran into, we were able to identify and use peer support through blogs and other internet sources to resolve the problems. There are plenty of sources online which provide tutorials, discuss problems, etc. Example: StackOverflow
Just with any programming tasks, have a plan first. Design out the system, spend time to build it correctly the first time and have plenty of testing and user acceptance opportunities. Xamarin was easy to implement for a C# programmer. However, you need to do tutorials to realize the platform's capabilities.
Supporting unit testing is bigger plus point in Laravel than any other framework. Developing with Laravel is much easier. Other frameworks have value in market, but Laravel has taken the lead in popularity among PHP developers in recent years. The large community supports you if you have problems. Using Laravel, integration became easy with third-party libraries, but it was costly too.
Xamarin runs natively on MacOS, and the debugger and other integration and auto-complete tools are far better than Eclipse for C# .NET. It also carries much of the plugin/add-on capabilities that are so desirable on Atom. Eclipse is a better for generalized software development, provided a developer is comfortable switching between the IDE the command line for certain parts of their workflow, like building, package management, or debugging. But for C# .NET development on MacOS specifically, Xamarin is the best product I've used for the job.
Laravel allows us to rapidly prototype and build complete, scalable applications internally, which saves us time and allows us to have internal tools that fit out precise needs. We use Symfony for a similar purpose, but Laravel is an even higher-level framework that we find saves us substantially more time when building many types of web applications.
Laravel solves many of the underlying concerns of building a large application (such as authentication, authorization, secure input handling) in the right ways. It saves us from handling those low-level concerns ourselves, potentially in a way that could take a lot of time or sets us up for issues in the future. It's tough to assign an ROI to this, but I'm sure it has prevented issues and saved time, which both have an impact on our financial situation.