266 karma · joined October 12, 2013
I find it very helpful to have properties defined, so when I use the component, I immediately know what are the props I can provide.
There are some 3rd party React components that won't have type definitions yet, but the popular ones are well covered. I have written most of the components I have used, so I haven't had many problems.
You should aim for deployment process where outDir would be in .gitignore and building of the JS files would happen on a build server.
Let's say you have existing ES2015 source code. You could start experimenting on a local machine and use a script to rename js files to ts. Run the TypeScript compiler and annotate some of the most used functions.
You can then check what is the experience of using those functions that have type annotations, what is the speed of the development, etc.
Sit down with colleagues, show what you have done and ask what do they think. You can then decide to proceed and stick with type annotations until you're sure. Use boy scouts rule: "Always leave the campground cleaner than you found it." aka add typings to the function declaration.
The way I dealt (until proper type definitions are written) was:
declare module "react-loader" { var noTypeInfoYet: any; export = noTypeInfoYet; }
Thanks for the links, future looks promising indeed.
JS Jabber episode was great! Full of great insights.
The reason is simple, contributing and reading the project source code should not start by learning a programming language. It is a different scenario when a team in a company has decided to learn and write their project with TypeScript/CoffeeScript/etc. language.
About tooling, I think writing modern JavaScript (ES2015, ES2016) is beneficial and therefore, you need a tool like Babel. When you go to that path, why not use TypeScript instead and get ES2015/ES2016 + type system + great compiler?
One thing I would like to add regarding the .js files, TypeScript 1.8 added a flag --allowJs which makes some sanity checks to the plain old .js files.
On a working day you might have to wake up earlier than you would naturally do.
Billing takes 5 minutes (I use web application called Zervant) and checking that the payment is received takes few minutes.
Then there are "random" stuff like updating insurance, meeting people (few times per month) etc.
Not that much stuff really.
My normal sleep routine would be 23:15 to bed and 06:45 up, so about 7,5 hours. Everything under that I consider sleep deficit.
I'm not native English speaker and by mistake made it sound bit more dramatic than I originally thought.
But it's equally right to do less work and spend the time on anything you like or things you have to do.
I do agree that freelancer status gives you more control, but it should not hurt anyone to ask what is your company's point of view. Assuming that employee is interested of downshifting, studying, working on a side-project (that is not competing with employers product) etc.
I'll update the blog post also.
For example: writing a blog post might be work for someone, side-projects can be done for business purposes or for just hobby etc.
What I try to do is things that interest me and get joy out of it.
I am sure you would find people that adapt to it.
One thing I am wondering is that should everyone work on the same schedule? I am not talking about night shift type of things, but there should be more than enough overlap between working schedules if one works 9-5 Mon - Fri?
I just didn't have to use the day for meetings like I originally planned and instead I was able to write that blog post that you just observed.
I asked that isn't four days easier to allocate than five days as it means less allocation? Would it be easier if I would work 6-days week? Never got answer.
Most of the excuses are bullshit. The truth in consulting business is that they don't get as much money from you (even if you cut 1/5 from your salary).
I'm lucky in a sense that demand is high at the moment. I haven't been able to yet convert that to high hourly price, but it's high enough to actually have a 4-day work week.
I have considered hiring help and came to conclusion that I have two options:
A) hire an employee B) get another freelancer to help
As the demand is high it also means that hiring is also difficult for me. Front-end developers have plenty of options to choose from and that basically means that I should provide good culture, benefits, salary etc. which require lot of effort from my side to do properly. Also, hiring people in Finland is quite expensive due to the "overhead": insurances, pensions etc.
Providing work to another freelancer and taking a cut might be profitable when you've >3 freelancers working on a project you've successfully written contract for.
I am bit more towards karma thinking: if I recommend someone for free, the positive action will be returned to me when the demand is lower.
Taking the day totally off especially when you have a special time period going on sounds like wise move.
I think in the future all this will be more popular as there will more and more people and less work due to the automation. One solutions is to decrease amount of work single person is doing and giving the rest for someone else.
Now I'm going to read the feedback section of your question.