I recently did the exact same job as the author of this post.
Migrating 15K LoC from JS to TS.
The author of Vue.JS also migrated Vue completely to Typescript.
At first I had major apprehension because of how much Microsoft generally enforces things on developers.
It's well know that if you start using C# , your entire stack will generally be MS based...(SQL Server, Azure etc... )
But after I did the migration , I was blown away by how confident and how much flexibility I had when i was writing my code.
Even if I have been writing code with Java / C# for nearly a decade , nothing has come close to Typescript in terms of productivity,flexibility and confidence.
Having used Javascript since before Node.JS , I think the whole idea of having to "transpile" my code to something or to respect some "rules" define by a company with a reputation that wasn't really "all in open source" .
But after using Typescript on multiples projects , you just can't go back , it's incredible how well it's scale without enforcing anything on the developers.
Hopefully , one day bootcamps will include Typescript in their trainings to demonstrate how typings can solve maintainability issues...
The state of the industry sometimes deeply sadden me.
Creating a stack that complex just to render Static Content... Seriously ?
I'm fairly confident that only the author of this project can do something with the codebase.
It must be an absolute mess between Zeplin , Storybook , Apollo , GraphQL , Next, Yeoman etc...
Just why ?
Can't Airbnb invest in one good CMS and tooling solution ? Don't they have a CTO that define the company tech governance and tech stack ?
Isn't building landing page for "Luxury Destination" one of their core businesses ?
Do each Airbnb engineer create their own stack for a tiny part of the website ?
It just buggers me to see something like this and remind me of their 'React Native Fiasco' where they decided to use React Native but their mobile engineers didn't like JS , so the engineers of each platform just wrote the app using binding to use Java or Objective-C.
Sometimes I really tell myself that working for a FAANGS must be awesome, but then this type of content pops up and it just remind me I should either stay at my current job or create my own business to avoid all this.
Agree on that point , I like Angular because it's opinionated compared to React.
> and backed by a giant unlike Vue
Strongly disagree , Vue is backed by many large corporations and unlike AngularJS was designed to guarantee backward compatibility.
AngularJS not being compatible with Angular is what has killed for good the frameworks and left thousands of entreprises in dust when they believed angular would become a standard because "it's backed by a giant".
Workings for banking sector , I've many customers build CRM or KYC applications on top of Nuxt. Developers love the Vue ecosystem.
> Seems like a safer enterprise choice.
Strongly disagree here as well.
Angular is a great framework but it has absolutely unacceptable build size,
A "Hello World" using Angular 7 with Ivy Rendering is 500KB+ ( tested this morning ). This is not acceptable for modern frameworks to be that big.
Vue and React stay largely under 100KB in terms of build size.
They are lots of scenarios where picking Angular over Vue & React would made things more complex for a project.
I strongly disagree with the hypothesis raised in the article.
First , most open source companies these days are Ventured Back ( Elastic , CockroachDB, MongoDB etc..) meaning the core of the issue isn't "AWS" not paying license fees or people creating tech on top of Open Source , it's VCs who want their money back times ten.
Companies like MongoDB/Elastic have raised hundred of millions and yet are still not profitable.
Who's fault is it ? Did the MongoDB community ever asked the company to go that way ? Did MongoDB presented a roadmap to the community saying that they would have to be "profitable by Month X" or they would change their licence to make more money ?
Nobody has forced those founders/companies hands to make their products open source nor to raise that much capital.
If the industry is turning that way it is essentially because those businesses have used Open Source as a mean to reach the widest possible audience in order to increase growth and show great metrics to VCs and investors to raise absolutely obscene amount of cash.
Vue.js and Laravel are two very well maintain and extremely profitable open source project.
Those projects did not asked for 150M$ in fundraising and then realized : "Ooops we won't meet our 100% YoY Growth to satisfy VCs promises".
If some companies are switching their licensing , it's mostly because they overestimated their technology value and can't show to investors the numbers they promised.
This isn't due the "AWS Problem" or because of a "wrong business model" with FOSS.
I always assumed it was used heavily in enterprise but never that much it's would somehow , it's also a popular stack in the Silicon Valley and NY. That said London and UK are well know to be MS Stack users.
Can some Engineers from SF or NY or voice their opinions on this ?
Currently the architecture forces you to import the Vue object entirely , has Vue under the hood isn't really modular...
With 3.0 Vue has taken the typescript way and is using packages , similar to angular , it looks absolutely awesome to work with now.
I really hope class based components will be supported natively without compiling or transpiling.
Working "out of the box" has always been part of Vue philosophy , I really hope this continue.
This is really a big release , but it's still sad to see the 3.0-alpha branch is not visible on GitHub , i really would have loved to have a look at it.
I realized PWA's potential was on Desktop and not really on mobile.
I came to realize that PWA missed really two things to change Desktop for good :
- Sandboxed FileSystem API
- Standard Operating System Support
Most apps like Slack, Discord or Twitch can barely justify their usage of Electron... beside the possibility to have those apps in a separate OS Window they don't make an extensive usage of Node.JS like VSCode which spawn "child_process".
They just seat there , in a separate OS Window and they can launch at OS startup too..but in order to have those two features you must completely give up on security and give access to almost everything on your computer...
PWA really bring a new dimension to Desktop App, if Windows and MacOS brought native support to PWA ( using Edge and Safari without the need for Chrome ) this would change the industry for ever.
I've been looking for such thing for a long time now.
If you have a corporate Job like consulting or something equivalent it's very likely you are packing an awful laptop with you everywhere you go, a DELL or a Lenovo or something like that.
DEX opens a door for next generation Mobile Desktop , where you SmartPhone is also your Desktop Computer.
I really hope Apple does something similar in this area , the new iPad can be connected to a screen, but the real deal would be using the iPhone with as a laptop...
While the read was interesting and bring solid points, I strongly disagree with the majority of the arguments.
>The biggest mistake I see developers make is assuming that they are building something that people both want and will pay a meaningful amount of money for.
Lots of projects were build with no exact plan on how to monetize them of if there would be customers to buy it. They just had a vision about how X or Y technology should be , and just created something by putting their guts in it.
The idea that you should marketize something before starting to build is coherent but not true for tech especially when Innovation sometimes requires to educate the customers about how to use a technology , Serverless and Docker are good examples of that I think.
>The best way to do this is by asking good questions, and then listening carefully and taking notes
Again I strongly disagree here. This pattern pushes entrepreneurs to create a version++ of something already existing because the customers told them :
"We are using [Insert Tech Name] and it doesn't support feature X"
So the entrepreneurs would rush to it's keyboard create a clone of the Tech and add the feature X.
This is usually called consulting in my opinion and they are already lots of people doing that... Being a "Founder" of something involve taking risk and not just adding a tiny feature because it can brings money on the short term.
It's about having a vision.
As a result , we could quote the hundreds of email startups we have today who basically do the same thing with often one tiny feature of difference...
> that does not mean that you have created enough incremental value for customers to make them willing to pay you a meaningful amount of money for your product
>The idea is that it allows you to define your database models by specifying what fields to include and BackendLab automatically creates a CRUD API
I don't see the advantage over Firebase FireRules , AWS AppSync , Azure Cosmos or MongoDB Stich all of which have advanced querying options with great SDK and integrations support.
This idea is not bad , it's just it doesn't seem to bring much compared to others on the market already offering BaaS...
So when WeWork responded with
-"The board is aware of it and has approved it"
they probably meant
-"Neuman is aware of it and has approved it" right ?