TypeScript 2: Adding custom.d.ts Typings Files for Existing JavaScript Modules

March 22, 2017 § Leave a comment

If you are trying to import ordinary JavaScript modules into a TypeScript project, and those modules don’t already have an internal or external typings file, you may get an error like:

  • error TS2688: Cannot find type definition file for ‘lodash’
  • error TS7016: Could not find a declaration file for module ‘himalaya’

For some reason, the TypeScript documentation talks a lot about how to create typings files for modules that don’t have them, but not about how to add them to your project. And it is incredibly difficult to Google the correct answer.

The best answer I found is from: https://www.bennadel.com/blog/3169-adding-custom-typings-files-d-ts-in-an-angular-2-typescript-application.htm

The actual answer is quite simple: are only four steps:

 $ npm install -g --save typings # if you haven't already
 $ cat > custom.d.ts # type definition file for that module
 declare module 'custom';
 ^D
 $ typings install --global --save file:custom.d.ts

That’s it!

« Read the rest of this entry »

Advertisements

Auto-launching Chrome to Debug Mocha Tests on Mac

March 22, 2017 § Leave a comment

Are you tired of cutting and pasting URLs from node –inspect to launch Chrome?

« Read the rest of this entry »

Stark Realty #20: Redemption

March 27, 2016 § Leave a comment

[The following is the final installment of a science-fiction serial I started writing at Matterport, where I worked from May to December of 2015. Someday I will get the rights to publish the entire story, but for now, enjoy this little vignette.]

Stark Realty #20: Redemption

“He didn’t kill your mother, Tanya.” panted the newly-arrived Jane Hathaway. “I did.”

Tanya Bain stared at the petite, matronly woman in shocked disbelief. Tony Stark, his hands nailed to the concrete wall with Q-carbon spikes, screamed “Jane, no!”

The demolecularizing grenade Tanya had placed over her father’s arc reactor-powered heart dropped from suddenly nerveless fingers.  With a supreme effort, Tony levered himself against the spikes and drop-kicked the grenade against the far wall, where it harmlessly vaporized a quarter-inch of foamed concrete.

“Tanya,” he gasped.  “Please. Don’t believe her. It was all my fault.”

His estranged daughter stared at him blankly, sinking slowly to the ground.  She, with help from the anonymous cyber-dwarf Rumplestilskin, had put herself through hell to destroy Iron Man for killing her mother. Had her whole life been based on a lie?

« Read the rest of this entry »

Best Live Chat Widget for Startups: Jan 2016

January 20, 2016 § Leave a comment

Live chat support software is a great way to ensure visitors to your SaaS site are successful – or at least tell you what went wrong.  An in-page widget with a friendly human being on the other side is much more approachable than a link to anonymous forum!

Unfortunately, few startups are able to guarantee 24×7 coverage, which means you need a easy-to-use tool with a good fallback user experience for when nobody is available to chat. Here is what appear to be the best options as of January 2016.

« Read the rest of this entry »

How to Build a Team

November 20, 2015 § Leave a comment

  1. Vision: What does success look like?
  2. Humanity: What do you need to succeed?

  3. Process: How do we ensure everyone gets what they need? 

Wide Open (or, Are You In?)

November 10, 2014 § Leave a comment

He’s my hero. THIS is how I dream of running my own projects / company.

hueniverse

Earlier this year I confronted the painful realization that my baby framework grew into a mature ecosystem – one I no longer had the capacity to maintain on my own. It started with dragging open issues for more than a few days, to a growing pile of sticky notes on my monitor of ideas I’d like to try, to (and most problematic) no longer remembering how big chunks of the code work.

The problem is, how to successfully move from a one-man-show to a community driven project, without giving up on the stability, consistency, and philosophy of the framework.

Consensus-Dictator-Fork

I believe the only practical model for running a successful open source project is the Consensus-Dictator-Fork (CDF) model. It’s a fancy name for how most open source projects work. Decisions are made by consensus whenever possible. This usually covers 95% of the decisions by the simple mechanism of proposing a…

View original post 932 more words

This is Probably a Good Time to Say That I Don’t Believe Robots Will Eat All the Jobs …

June 17, 2014 § Leave a comment

The mechanics of jobs will be automated, which is why the jobs of the future will rely on us being more human to each other.

Marc Andreessen

Image; Tobias Higbie Image: Tobias Higbie

 THE ROBOT TWEETSTORMS by @PMARCA

One of the most interesting topics in modern times is the “robots eat all the jobs” thesis. It boils down to this: Computers can increasingly substitute for human labor, thus displacing jobs and creating unemployment. Your job, and every job, goes to a machine.

This sort of thinking is textbook Luddism, relying on a “lump-of-labor” fallacy – the idea that there is a fixed amount of work to be done. The counterargument to a finite supply of work comes from economist Milton Friedman — Human wants and needs are infinite, which means there is always more to do. I would argue that 200 years of recent history confirms Friedman’s point of view.

If the Luddites had it wrong in the early 19th century, the only way their line of reasoning works today is if you believe this time is…

View original post 1,771 more words

Where Am I?

You are currently browsing the Software category at iHack, therefore iBlog.