JSJ 266 NPM 5.0 with Rebecca Turner

JSJ 266 NPM 5.0 with Rebecca Turner

On today’s episode of JavaScript Jabber, Charles Max Wood and panelist Joe Eames chat with Rebecca Turner, tech lead for https://www.npmjs.com/, a popular Javascript package manager with the worlds largest software registry. Learn about the newly released NPM 5 including a few of the updated features. Stay tuned![1:58] Was the release of node JS 8 tied to NPM5?
- Features in NPM5 have been in planning for 2 years now.
- Planned on getting it out earlier this year.
- Node 8 was coming out and got pushed out a month.
- Putting NPM5 into Node 8 became doable.
- Pushed really hard to get NPM5 into https://nodejs.org/en/blog/release/v8.0.0/ so that users would get NPM5 and updates to NPM5.
[2:58] Why would it matter? NPM doesn’t care right?
- Right you can use NPM5 with any version of node.
- Most people don’t update NPM, but upgrade Node.
- So releasing them together allowed for when people updated Node they would get NPM 5.
[3:29] How does the upgrade process work if you’re using NVM or some node version manager?
- Depends. Different approaches for each
- NVM gets a fresh copy of Node with new globals. NVM5 and Node 8 are bundled.
- For some, If you manually upgrade NVM you’ll always have to manually. It will keep the one you manually upgraded to.
[4:16] Why NPM 5?
- It’s night and day faster.
- 3 to 5 times speed up is not uncommon.
- Most package managers are slow.
- NPM 5 is still growing. Will get even faster.
[5:18] How did you make it faster?
- The NPM’s cache is old. It’s very slow. Appalling slow.
- Rewrote cache
- Saw huge performance gains
[5:49] What is the function of the cache?
- Cache makes it so you don’t have to reinstall modules from the internet.
- It has registry information too.
- It will now obey http headers for timing out cache.
[6:50] Other things that made it faster?
- Had a log file for a long time. It was called https://docs.npmjs.com/cli/shrinkwrap.
- NPM 5 makes it default.
- Renamed it to packagelog.json
- Exactly like shrinkwrap package file seen before
- In combo with cache, it makes it really fast.
- Stores information about what the tree should look like and it’s general structure.
- It doesn’t have to go back and learn versions of packages.
[7:50] Can you turn the default Packagelog.json off?
- Yes. Just:
- Set packagelog=false in the npmrc
[8:01] Why make it default? Why wasn’t it default before?
- It Didn’t have it before. Shrinkwrap was added as a separate project enfolded in NPM and wasn’t core to the design of NPM.
- Most people would now benefit from it. Not many scenarios where you wouldn’t want one.
- Teams not using the same tools causes headaches and issues.
[9:38] Where does not having a lock show up as a problem?
- It records the versions of the packages installed and where NPM put them so that when you clone a project down you will have exactly the same versions across machines.
- Collaborators have the exact same version.
- Protects from issues after people introduce changes and patch releases.
- NPM being faster is just a bonus.
- Store the sha512 of the package that was installed in the glock file so that we can verify it when you install. It’s Bit for bit what you had previously.
[11:12] Could you solve that by setting the package version as the same version as the .Json file?
- No. That will lock down the versions of the modules that you install personally, not the dependancies, or transitive dependancies.
- Package log allows you to look into the head of the installer. This is what the install looks like.
[12:16] Defaulting the log file speed things up? How?
- It doesn’t have to figure out dependences or the tree which makes it faster.
- Shrinkwrap command is still there, it renames it to shrinkwrap but shrinkwrap cannot be published.
- For application level things or big libraries, using shrinkwrap to lock down versions is popular.
[13:42] You’ve Adopted specifications in a ROC process. When did you guys do that?
- Did it in January
- Have been using them internally for years. Inviting people into the process.
- Specifications
- Written in the form of “Here is the problem and here are the solutions.”
- Spec folder in NPM docs, things being added to that as they specify how things work.
- Spec tests have been great.
[14:59] The update adds new tools. Will there be new things in registry as well?
- Yes.
- Information about a package from registry, it returns document that has info about every version and package json data and full readme for every version.
- It gets very large.
- New API to request smaller version of that document.
- Reduces bandwidth, lower download size, makes it substantially faster.
- Used to be hashed with sha1, With this update it will be hashed with sha512 as well as sha1 for older clients.
[16:20] Will you be stopping support for older versions?
- LTS version of NPM was a thing for a while. They stopped doing that.
- Two models, people either use whatever version came with Node or they update to the latest.
- The NPM team is really small. Hard to maintain old NPM branches.
- Supports current versions and that’s pretty much it.
- If there are big problems they will fix old versions. Patches , etc.
[17:36] Will there ever be problems with that?
- Older versions should continue to work. Shouldn’t break any of that.
- Can’t upgrade from 0.8.
- It does break with different Node version
- Does not support Node versions 0.10 or 0.12.
[18:47] How do you upgrade to NPM?
- sudo npm install -gmpm
- Yes, you may not need sudo. depend on what you’re on.
[19:07] How long has it been since version 4?
- Last October is when it came out.
[19:24] Do you already have plans for version 6?
- Yes!
- More releases than before coming up.
- Finally deprecating old features that are only used in a few packages out of the whole registry.
- Running tests on getting rid of things.
[20:50] Self healing cache. What is it and why do we want it?
- Users are sometimes showing up where installs are broken and tarbols are corrupted.
- This happens sometimes with complicated containerization setups makes it more likely. It’s unclear where the problem actually is.
- https://www.npmjs.com/package/cacache - content addressable cache. Take the hash of your package and use it to look up address to look it up in the cache.
- Compares the Tarbol using an address to look it up in the cache.
- Compares to see if it’s old. Trashes old and downloads updated one.
- Came out with the cache. Free side effect of the new cache.
[23:14] New information output as part of the update?
- NPM has always gave back you the tree from what you just installed.
- Now, trees can be larger and displaying that much information is not useful.
- User patch - gives you specifically what you asked for.
- Information it shows will be something like: “I installed 50 items, updated 7, deleted 2.”
[24:23] Did you personally put that together?
- Yes, threw it together and then got feedback from users and went with it.
- Often unplanned features will get made and will be thrown out to get feedback.
- Another new things ls output now shows you modules that were deduped. Shows logical tree and it’s relationships and what was deduped.
[25:27] You came up to node 4 syntax. Why not go to node 8?
- To allow people with just node 4 be able to use NPM.
- Many projects still run Node 4. Once a project has been deployed, people generally don’t touch it.
[26:20] Other new features? What about the File Specifier?
- File specifier is new. File paths can be in package json, usually put inside pointing to something inside your package.
- It will copy from there to your node modules.
- Just a node module symlink.
- Much faster. Verifiable that what’s in your node modules matches the source. If it’s pointing at the right place it’s correct. If not, then it’s not.
- Earlier, sometimes it was hard to tell.
[27:38] Anything else as part of the NPM 5 release? Who do you think will be most affected by it?
- For the most part, people notice three things:
- 1st. no giant tree at the end
- 2nd. Much faster
- 3rd. Package lock.
[28:14] If it’s locked, how do you update it?
- Run npm installer and then npm update
- Used to be scary, but works well now.
- Updates to latest semver, matches semver to package json to all node modules.
- Updates package lock at the same time
- Summary in Git shows what’s changed.
[28:59] Did Yarn come into play with your decisions with this release?
- The plans have been in play for a long time for this update.
- https://yarnpkg.com/en/ inclusion of similar features and the feedback was an indicator that some of the features were valuable.
[29:53] Other plans to incorporate features similar to yarn?
- Features are already pretty close.
- There are other alternative package managers out there.
- PMPM interesting because when it installs it doesn’t copy all the files. It c

Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

Episoder(735)

167 JSJ TypeScript and Angular with Jonathan Turner and Alex Eagle

167 JSJ TypeScript and Angular with Jonathan Turner and Alex Eagle

02:27 - Alex Eagle IntroductionTwitter GitHubGoogle02:54 - Jonathan Turner IntroductionTwitter GitHubMicrosoft[Talk] Jonathan Turner: TypeScript and Angular 2 @ ng-conf 2015 [Talk] Jonathan Turner: TypeScript and Angular 2 @ Angular U 2015 03:30 - What is TypeScript?04:40 - Google + Microsoft = <3 (Angular Adopting TypeScript)Rob EisenbergAtScriptJonathan Turner: Angular 2: Built on TypeScript07:18 - TypeScript Accommodating AngularTC39Yehuda KatzAurelia 09:28 - Surge of Interest in Adopting a Typechecker, Type System 14:21 - Angular: Creating a New LanguageKilling Off Wasabi - Part 1 (FogBugz Article)traceur16:46 - The Angular 2 Component System and How it Uses New Annotations for Classes18:01 - Annotations and Decorators22:06 - TypeScript and Babel?; Adding New Features25:25 - Non-Angular Users Adopting TypeScriptVisual Studio Code34:55 - Tooling and Setting Modes for Linting and Static Analysis36:58 - Using Libraries Outside the TypeScript Ecosystem38:11 - Type Definition Files40:15 - Content of the Type System43:19 - Duck Typing 45:12 - Getting People to Care about TypeScript 49:16 - The Angular and TypeScript RelationshipPicks f.lux (Aimee) Jafar Husain: Functional Programming in Javascript (learnrx) (Aimee) Startup Timelines (Jamison) Friday Night Lights (Jamison) React Rally (Jamison) Evan Farrer: Unit testing isn't enough. You need static typing too. (Dave) AngularConnect (Joe) ng-click.com (Joe) mdn.io (Joe) Sonic Pi (Chuck) Error Prone (Alex) AudioScope-ng2 (Jonathan) The Nintendo World Championships (Jonathan)Special Guests: Alex Eagle and Jonathan Turner . Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

8 Jul 20151h 1min

166 JSJ New Relic with Wraithan and Ben Weintraub

166 JSJ New Relic with Wraithan and Ben Weintraub

02:27 - Coding House Scholarship Winners with AJ and AimeeEmily Dreisbach (50% scholarship winner)Blake Gilmore (50% scholarship winner)Berlin Sohn (100% scholarship winner)Congratulations from the panelists of JavaScript Jabber! 09:48 - Ben Weintraub IntroductionTwitter GitHub10:40 - Wraithan IntroductionTwitter GitHub Blog11:01 - Why Care About Monitoring?Insights13:08 - Mixedpanel 13:57 - How it Works on the BackendTime-series DataMySQLstatsdTracesS3CassandraInsights17:26 - New Relic’s CEO: Lew Cirne 18:37 - How the Node Agent WorksExpress.js Specifics    Transactions and Controller NamesDatabase MonitoringMongoDBOracle Support23:27 - Deciding Which Databases to SupportPostgres26:41 - Browser Monitoring32:54 - Using Zombie.js?34:11 - Tree of Causality Track.js 39:37 - Monetizing Aspect, Viewable Source/Source Available Code47:28 - PerformanceCodeGenmraleph Blog v8-perfBenchmarkingjsPerf01:00:53 - New Relic@newrelicNew Relic Blog New Relic Community ForumPicks mraleph Blog (Wraithan) v8-perf (Wraithan) The Dear Hunter: A Night on the Town (Jamison) React Rally (Jamison) caddy (AJ) Windows 10: Setup your Raspberry Pi 2 (AJ) Remote debugging protocol (Ben) Chrome Dev Tools Filmstrip View (Ben)Special Guests: Ben Weintraub and Wraithan . Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

1 Jul 20151h 4min

165 JSJ ShopTalk with Chris Coyier and Dave Rupert

165 JSJ ShopTalk with Chris Coyier and Dave Rupert

02:43 - Dave Rupert IntroductionTwitter GitHub BlogParavel03:42 - Chris Coyier IntroductionTwitter GitHub BlogCSS-Tricks CodePen 06:24 - The ShopTalk Show and Podcasting@shoptalkshow“What do I learn next?” => “Just Build Websites!”Question & Answers Aspect23:19 - Tech Is A NichePaul Ford: What is Code? 29:51 - Balancing Technical Content for All Levels of ListenersCommunity Opinion38:42 - Learning New CSS Tricks (Writing Blog Posts)Code Golf41:54 - The Accessibility Project Adventures in Angular Episode #027: Accessibility with Marcy Sutton Anne Gibson: An Alphabet of Accessibility Issues 56:02 - Favorite & Cool EpisodesShowTalk Show Episode #091: with Jamison Dance and Merrick Christensen ShopTalk Show Episode #101: with John ResigShopTalk Show Episode #157: with Alex Russell  ShopTalk Show Episode #147: with Tom Dale ShopTalk Show Episode #123: Special Archive Episode from 2004 ShopTalk Show Episode #166: with Lisa IrishShopTalk Show Episode #161: with Eric Meyer Picks FIFA Women's World Cup (Joe) Winnipeg (Joe) The Martian by Andy Weir (Joe) Zapier (Aimee) SparkPost (Aimee) dev.modern.ie/tools/vms (AJ) remote.modern.ie (AJ) Microsoft Edge (AJ) StarFox Zero for Wii U (AJ) Hot Plate (AJ) untrusted (AJ) Skiplagged (Dave) Judge John Hodgman (Dave) Wayward Pines (Chris) Sturgill Simpson (Chris) The Economic Value of Rapid Response Time (Dave) The Adventure Zone (Dave) React Rally (Jamison) Matsuoka Shuzo: NEVER GIVE UP (Jamison) DESTROY WITH SCIENCE - Quantum Loop (Jamison) Serial Podcast (Chuck) Ruby Remote Conf (Chuck)Special Guests: Chris Coyier and Dave Rupert. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

24 Jun 20151h 15min

164 JSJ Rendr with Spike Brehm

164 JSJ Rendr with Spike Brehm

Get your Ruby Remote Conf tickets and check out the @rubyremoteconf Twitter feed for exciting updates about the conference. 02:22 - Spike Brehm IntroductionTwitter GitHubBlogAirbnb@airbnb@airbnbnerds03:07 - rendr Isomorphic JavaScriptSingle-Page ApplicationRoutes and Controllers06:24 - Why the back and forth between server-side and client-side applications?Rendering Content for SEO (Search Engine Optimization)Spike Brehm: Building Isomorphic Apps @ JSConf.Asia 2014 (Video) Spike Brehm: Building Isomorphic Apps @ JSConf.Asia 2014 (Slides)Spike Brehm: The Evolution of Airbnb's FrontendCaching20:28 - Tools That HelpBrowserifywebpackset-cookie22:21 - Why do this? Who gets statically and dynamically rendered pages?Airbnb Mobile HydrationReactVirtual DOMDiffingDelegation30:26 - DOM and String-based TemplatingHandlebars.jsExpress.jsMounting33:11 - Use CasesMeteorAsana36:08 - Why does Isomorphic JavaScript get so much hate?Charlie Robbins: Scaling Isomorphic Javascript Code Michael Jackson: Universal JavaScriptPicks The Paleolithic Diet (Aimee) Programming Throwdown (Aimee) Listen to other people’s views (Chuck) AJ O'Neal: Access web pages through your home network via SSH (AJ) AJ O'Neal: Reverse VPN: turn any private device into public cloud server (AJ) Alt (Spike) Tame Impala (Spike)Special Guest: Spike Brehm. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

17 Jun 201554min

163 JSJ Flow with Jeff Morrison and Avik Chaudhuri

163 JSJ Flow with Jeff Morrison and Avik Chaudhuri

03:32 - Jeff Morrison IntroductionTwitter GitHubFacebook03:46 - Avik Chaudhuri IntroductionTwitter GitHub LinkedInFacebook04:27 - Flow @flowtype [GitHub] flow05:36 - Static Type CheckingDynamic vs Static Type Languages09:52 - Flow and Unit TestingJest12:39 - Gradual Typing 15:07 - Type Inference 17:50 - Keeping Up with New Features in JavaScriptBabel20:49 - Generators24:46 - Working on Flow28:27 - Flow vs TypeScriptInference SupportTony Hoare: Null References: The Billion Dollar Mistake35:41 - Putting the “Java” Back in JavaScriptServer/Client OverviewPrototyping45:26 - Flow and the JavaScript Community46:43 - React Support48:39 - Documentationgh-pages (link to the docs)IRC Channel for Flow: #flowtype on webchat.freenode.netPicks Nolan Lawson: We have a problem with promises (Aimee) Jim 'N Nick's BBQ Restaurant (Aimee) Frank McSherry: Scalability! But at what COST? (Jamison) Frank McSherry: Bigger data; same laptop (Jamison) Greg Wilson: What We Actually Know About Software Development, and Why We Believe It's True (Jamison) Marron: Time-Travel Debugging for JavaScript/HTML Applications (Jeff) Real World OCaml (Jeff) Muse (Jeff) Shtetl-Optimized (Avik) Chef's Table (Avik)Special Guests: Avik Chaudhuri and Jeff Morrison. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

10 Jun 20151h 2min

162 JSJ ESLint with Jamund Ferguson

162 JSJ ESLint with Jamund Ferguson

02:15 - Jamund Ferguson IntroductionTwitter GitHubBlogPayPalJamund Ferguson: JavaScript Linting for Code Quality & ESLint Overview02:47 - Lint (Background)JSLintDouglas CrockfordJSHintESLint[GitHub] eslintNicholas Zakas[Gitter] eslint04:48 - Keeping ESLint Up-to-date​​Esprima Ariya Hidayatespree Babelbabel-eslintES6 (ECMAScript 6)08:09 - Abstract Syntax Tree (ASTs)Jamund Ferguson: Don’t be scared of abstract syntax trees MinificationUglifyJS13:28 - Using Lint ToolsContext SwitchingAspects to Linting:Code StandardizationCatching Bad MistakesJSCS (JavaScript Code Style)“Extends”20:42 - Are there a downsides to linting?The Social Problem23:40 - Establishing RulesBikesheddingConsistency25:12 - Cool ESLint Featureshandle-callback-errNot Throwing LiteralsNo Restricted ModulesJamund Ferguson: Error Handling in Node.js @ MountainWest JavaScript 2014 30:45 - How ESLint Works Internallyeslint-plugin-angularConfiguration and Defaults40:07 - Getting Started with Linting43:03 - Autofixer 44:41 - Plugins46:47 - Linter Feedback From the PanelPicks Mozilla (AJ) We Will All Be Game Programmers (Aimee) Search Inside Yourself: The Unexpected Path to Achieving Success, Happiness (and World Peace) by Chade-Meng Tan (Aimee) Good Mythical Morning (Dave) Salt Lake City (Dave) BB King Calls This One Of His Best Performances (Jamison) json-server (Jamison) Austenland (Joe) Supergirl (Joe) A Short History of Nearly Everything by Bill Bryson (Jamund) The Book of Mormon (Jamund)     Special Guest: Jamund Ferguson. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

3 Jun 201558min

161 JSJ Rust with David Herman

161 JSJ Rust with David Herman

02:52 - David Herman IntroductionTwitter BlogJavaScript Jabber Episode #54: JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya HidayatJavaScript Jabber Episode #44: Book Club! Effective JavaScript with David HermanEffective JavaScript by David Herman@effectivejsTC39Mozilla03:50 - The Rust Programming Language[GitHub] rust06:31 - “Systems Programming Without Fear”07:38 - High vs Low-level Programming LanguagesGarbage Collection and DeallocationMemory SafetyPerformance and Control Over Performance11:44 - Stack vs Heap Memory Etymology of "Foo" RAII (Resource Acquisition Is Initialization)16:52 - The Core of RustOwnershipType System24:23 - Segmentation Fault (Seg Faults)27:51 - How much should programmers care about programming languages? Andrew Oppenlander: Rust FFI (Embedding Rust in projects for safe, concurrent, and fast code anywhere.)32:43 - Concurrency and Multithreaded Programming35:06 - Rust vs Go 37:58 - servo 40:27 - asm.jsemscripten42:19 - Cool Apps Built with RustSkylightWit.ai45:04 - What hardware architectures does the Rust target?45:46 - Learning RustRust for Rubyists by Steve KlabnikPicks Software Engineering Radio (Dave) How Will You Measure Your Life? by Clayton M. Christensen (Dave) The Presidents of the United States of America (Dave) Design Patterns in C (AJ) Microsoft Edge Dev Blog: Bringing Asm.js to Chakra and Microsoft Edge (AJ) The Web Platform Podcast: Episode 43: Modern JavaScript with ES6 & ES7 (AJ) Firefox Fame Phone (AJ) iTunes U CS106A (Programming Methodology) (Aimee) Valerian Root on Etsy (Aimee) The Dear Hunter - Live (Jamison) Designing Data-Intensive Applications by Martin Kleppmann (Jamison) Fogus: Perlis Languages (Jamison) Galactic Civilizations III (Joe) Visual Studio Code (Joe) Tessel 2 (Dave) Event Driven: How to Run Memorable Tech Conferences by Leah Silber (Dave) Plush Hello Kitty Doll (Dave)Special Guest: David Herman. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

27 Mai 20151h 5min

160 JSJ Stormpath with Robert Damphousse

160 JSJ Stormpath with Robert Damphousse

02:24 - Robert Damphousse Introduction02:40 - OAuthOpenIDJWT07:15 - Stormpath@gostormpath[GitHub] StormpathBlog08:38 - Authorization Information Storage11:29 - Stormpath Authentication vs OAuth AuthenticationResource Owner Password Credentials Grant14:43 - Caching 15:41 - Building Backends as a Service?18:21 - Security19:12 - Using CassandraStormpath in Planet Cassandra: 50k Accounts Imported in Under 200ms20:27 - Use Cases22:27 - Authentication as a Service 23:40 - 2FA (Two Factor Authentication)?24:07 - REST APIsLaunch a SaaS – and Battle Your Robot – With Stormpath25:39 - Making Complete AppsFullContactFirebase26:33 - Security (Cont’d)27:34 - In-Between Layer (Authentication API)28:40 - Browser-Based vs Mobile Application Use29:44 - Angular, React, Flux, 32:02 - React Native?33:05 - Stormpath Life Expectancy35:09 - Customers36:12 - Active Directory, LDAP (Lightweight Directory Access Protocol) 37:05 - Support and PricingPicksPutting the "fun" back in "funeral"! Celebrating the death of old IE browsers on January 12! (Dave) Giant Star Wars LEGO Super Star Destroyer Shattered at 1000 fps | Battle Damage (Dave) GitLab (Dave) Allen Pike: JavaScript Framework Fatigue (Aimee) The Cult of Work You Never Meant to Join (Aimee) Serial (AJ) HotPlate (AJ) Design Patterns in C (AJ) OAuth3 (AJ) JS Remote Conf Videos (Chuck) Ruby Remote Conf (Chuck) Traction: Get a Grip on Your Business by Gino Wickman (Chuck) Startups For the Rest of Us (Chuck) The Guest House: A Poem (Robert) The Hiring Post (Robert) Front-end Job Interview Questions (Robert)Special Guest: Robert Damphousse. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

20 Mai 201550min

Populært innen Business og økonomi

stopp-verden
dine-penger-pengeradet
lydartikler-fra-aftenposten
e24-podden
rss-penger-polser-og-politikk
rss-borsmorgen-okonominyhetene
utbytte
tid-er-penger-en-podcast-med-peter-warren
finansredaksjonen
okonomiamatorene
pengepodden-2
lederpodden
morgenkaffen-med-finansavisen
pengesnakk
rss-finansforum-2
rss-markedspuls-2
rss-investering-gjort-enkelt
livet-pa-veien-med-jan-erik-larssen
rss-impressions-2
lederskap-nhhs-podkast-om-ledelse