Podcasts about ImageMagick

Free and open-source software

  • 32PODCASTS
  • 42EPISODES
  • 47mAVG DURATION
  • ?INFREQUENT EPISODES
  • Mar 13, 2025LATEST
ImageMagick

POPULARITY

20172018201920202021202220232024


Best podcasts about ImageMagick

Latest podcast episodes about ImageMagick

Developer Voices
Graphite: Image Editing as a Syntax Tree (with Keavon Chambers & Dennis Kobert)

Developer Voices

Play Episode Listen Later Mar 13, 2025 77:32


Graphite is a new image editor with an interesting architecture - it's a classic UI-driven app, an image-manipulation language, and a library of programmable graphics primitives that any Rust coder could use, extend or add to. The result is something that you can use like Photoshop or Inkscape, or make use of in batch pipelines, a bit like ImageMagick.Joining me to discuss it are Keavon Chambers & Dennis Kobert, who are hammering away on building a project that's potentially as demanding as Photoshop, but with a more ambitious architecture. How can they hope to compete? Perhaps in the short term by doing what regular image And is the future of image editing modular?–Graphite Homepage: https://graphite.rs/Graphite Web Version: https://editor.graphite.rs/Graphite on Github: https://github.com/GraphiteEditor/GraphiteSigned Distance Fields: https://jasmcole.com/2019/10/03/signed-distance-fields/Support Developer Voices on Patreon: https://patreon.com/DeveloperVoicesSupport Developer Voices on YouTube: https://www.youtube.com/@developervoices/joinKris on Bluesky: https://bsky.app/profile/krisajenkins.bsky.socialKris on Mastodon: http://mastodon.social/@krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

Hacker Public Radio
HPR4196: HPR Community News for August 2024

Hacker Public Radio

Play Episode Listen Later Sep 2, 2024


table td.shrink { white-space:nowrap } hr.thin { border: 0; height: 0; border-top: 1px solid rgba(0, 0, 0, 0.1); border-bottom: 1px solid rgba(255, 255, 255, 0.3); } New hosts Welcome to our new host: Bob. Last Month's Shows Id Day Date Title Host 4174 Thu 2024-08-01 Of the Mic and the Mop Ken Fallon 4175 Fri 2024-08-02 what's in my bag part 2 operat0r 4176 Mon 2024-08-05 HPR Community News for July 2024 HPR Volunteers 4177 Tue 2024-08-06 Blender 3D Tutorial #1 Deltaray 4178 Wed 2024-08-07 Today I learnt (2024-07-27) Dave Morriss 4179 Thu 2024-08-08 HPR New Years Eve Show 2023 - 24 ep 5 Honkeymagoo 4180 Fri 2024-08-09 Intro to Science Fiction Series Ahuka 4181 Mon 2024-08-12 Downloading out of copyright movies Bob 4182 Tue 2024-08-13 Replacing backup batteries in my Kenwood TS940S HF Radio Part 1 MrX 4183 Wed 2024-08-14 What's in Kevie's holiday bag: Kevie 4184 Thu 2024-08-15 Use GKRellM, wget and ImageMagick for a live slideshow gemlog 4185 Fri 2024-08-16 Archiving VCR or any other RCA media Ken Fallon 4186 Mon 2024-08-19 How to get started with Software Freedom Day? Trollercoaster 4187 Tue 2024-08-20 Go Fish Card Game Al 4188 Wed 2024-08-21 Re: HPR4172 Comment by Ken Fallon Archer72 4189 Thu 2024-08-22 HPR New Years Eve Show 2023 - 24 ep 6 Honkeymagoo 4190 Fri 2024-08-23 Civilization IV Ahuka 4191 Mon 2024-08-26 rkvm software KVM Windigo 4192 Tue 2024-08-27 Replacing backup batteries in my Kenwood HF Radio Part 2 MrX 4193 Wed 2024-08-28 Why I haven't recorded an episode for HPR thelovebug 4194 Thu 2024-08-29 Get more user space on your Linux filesystem with tune2fs Deltaray 4195 Fri 2024-08-30 Hacking HPR Hosts Ken Fallon Comments this month These are comments which have been made during the past month, either to shows released during the month or to past shows. There are 30 comments in total. Past shows There are 8 comments on 7 previous shows: hpr2023 (2016-05-04) "Setting up my Raspberry Pi 3" by Dave Morriss. Comment 7: Dave Morriss on 2024-08-23: "What failed first, the SD or the SSD?" hpr3661 (2022-08-15) "Ham Radio testing" by Archer72. Comment 2: Dave Lee (thelovebug) on 2024-08-22: "Only just got around to listening to this one" hpr4036 (2024-01-22) "The Tildeverse" by Claudio Miranda. Comment 1: Dave Lee (thelovebug) on 2024-08-22: "rawtext" hpr4096 (2024-04-15) "Powers of two" by Deltaray. Comment 4: mandigal on 2024-08-10: "RE:" hpr4135 (2024-06-07) "Mining the web" by Cedric De Vroey. Comment 4: Cedric on 2024-08-01: "Follow up" hpr4156 (2024-07-08) "Badger 2040" by Kevie. Comment 1: Ken Fallon on 2024-08-05: "I am weak" hpr4172 (2024-07-30) "Re: hpr4072 Piper voice synthesis" by Archer72. Comment 3: Ken Fallon on 2024-08-01: "More issues" Comment 4: Ken Fallon on 2024-08-02: "It works" This month's shows There are 22 comments on 9 of this month's shows: hpr4174 (2024-08-01) "Of the Mic and the Mop" by Ken Fallon. Comment 1: Knightwise on 2024-07-31: "Posting on behalf of Knightwise, and with his permission."Comment 2: dnt on 2024-08-03: "A good reflection on what this project is"Comment 3: Henrik Hemrin on 2024-08-04: "Leared more about what HPR is"Comment 4: Ken Fallon on 2024-08-05: "@dnt"Comment 5: Ken Fallon on 2024-08-05: "@Henrik"Comment 6: Archer72 on 2024-08-05: "Re: hpr4174::2024-08-01 Of the Mic and the Mop and Re: Henrik Hemrin" hpr4177 (2024-08-06) "Blender 3D Tutorial #1" by Deltaray. Comment 1: Deltaray on 2024-08-06: "Place to post your renders"Comment 2: Henrik Hemrin on 2024-08-13: "I like the audio tutorial concept" hpr4180 (2024-08-09) "Intro to Science Fiction Series" by Ahuka. Comment 1: Trey on 2024-08-09: "Downtown Buffalo Library"Comment 2: Kevin O'Brien on 2024-08-09: "Thank you Trey"Comment 3: Dave Lee (thelovebug) on 2024-08-14: "Great series!"Comment 4: Kevin O'Brien on 2024-08-15: "Just what I hoped for"Comment 5: Trollercoaster on 2024-08-20: "Small recommendation (and thanks)"Comment 6: Aaron B on 2024-08-24: "Interesting list, Sci fi" hpr4181 (2024-08-12) "Downloading out of copyright movies" by Bob. Comment 1: Windigo on 2024-08-12: "Alternative sites" hpr4182 (2024-08-13) "Replacing backup batteries in my Kenwood TS940S HF Radio Part 1" by MrX. Comment 1: Trey on 2024-08-13: "Thank you for the reminder" hpr4184 (2024-08-15) "Use GKRellM, wget and ImageMagick for a live slideshow" by gemlog. Comment 1: George on 2024-08-15: "png"Comment 2: gemlog on 2024-08-16: "re: png" hpr4185 (2024-08-16) "Archiving VCR or any other RCA media" by Ken Fallon. Comment 1: Trixter on 2024-08-21: "Some issues with your capture methodology"Comment 2: Ken Fallon on 2024-08-22: "Trixter" hpr4187 (2024-08-20) "Go Fish Card Game" by Al. Comment 1: Dave Lee (thelovebug) on 2024-08-22: "Not played this in years" hpr4188 (2024-08-21) "Re: HPR4172 Comment by Ken Fallon" by Archer72. Comment 1: Dave Lee (thelovebug) on 2024-08-22: "Bryce T. Shatner" Mailing List discussions Policy decisions surrounding HPR are taken by the community as a whole. This discussion takes place on the Mail List which is open to all HPR listeners and contributors. The discussions are open and available on the HPR server under Mailman. The threaded discussions this month can be found here: https://lists.hackerpublicradio.com/pipermail/hpr/2024-August/thread.html Events Calendar With the kind permission of LWN.net we are linking to The LWN.net Community Calendar. Quoting the site: This is the LWN.net community event calendar, where we track events of interest to people using and developing Linux and free software. Clicking on individual events will take you to the appropriate web page. Any other business Repairing shows where external files have been lost The further back in time we go with these repairs, the more challenging they become. The most that can be done per day is five, and there have been a few breaks along the way! This is the current repair state: +------------+------------+--------------+------------------+ | date | repairable | repair_count | unrepaired_count | +------------+------------+--------------+------------------+ | 2024-08-28 | 352 | 252 | 100 | +------------+------------+--------------+------------------+

Hacker Public Radio
HPR4184: Use GKRellM, wget and ImageMagick for a live slideshow

Hacker Public Radio

Play Episode Listen Later Aug 15, 2024


This segment is about image magic and the GK Relim system monitor and highway web cameras. The British Columbia HighwayCams website allows you to view highway conditions, traffic, and weather information at a glance. GNU Wget is a free software package for retrieving files using HTTP, HTTPS, FTP and FTPS, the most widely used Internet protocols. It is a non-interactive commandline tool, so it may easily be called from scripts, cron jobs, terminals without X-Windows support, etc. ImageMagick is a free, open-source software suite, used for editing and manipulating digital images. It can be used to create, edit, compose, or convert bitmap images, and supports a wide range of file formats, including JPEG, PNG, GIF, TIFF, and Ultra HDR. GKrellM is a single process stack of system monitors which supports applying themes to match its appearance to your window manager, Gtk, or any other theme. Here is how the thumbnails and my own GKrellM monitor look: The bash script can be found here. Links https://gemlog.gemlog.ca/ https://images.drivebc.ca/bchighwaycam/pub/html/www/index-Northern.html https://www.gnu.org/software/wget/ https://imagemagick.org/ http://gkrellm.srcbox.net/

Lately in PHP podcast
PHP 8 Enums to CSS Colors, WordPress Editor, Bot Protection, SVG to PNG Conversion - 6 minutes - Lately in PHP 98

Lately in PHP podcast

Play Episode Listen Later Oct 5, 2023


PHP 8 Enums to CSS Colors, WordPress Editor, Bot Protection, SVG to PNG Conversion - 6 minutes - Lately in PHP 98 By Manuel Lemos On the Lately in PHP 98 podcast, you will learn in 6 minutes about a WordPress plugin that implements a visual editor for posts with blocks, a package to convert SVG graphics into PNG images and remove the image transparency using the ImageMagick extension, a WordPress plugin to blocks abusive bots, using PHP 8 enum types to assign names to colors defined by CSS frameworks like Bootstrap and Tailwind. Read this article, watch a 6-minute video, or listen to episode 98 audio of the Lately in PHP podcast to learn about the best articles published on the PHP Classes site in the week of September 23 through September 30

SANS Internet Stormcenter Daily Network/Cyber Security and Information Security Stormcast

Apache NiFi Attacks https://isc.sans.edu/diary/Your%20Business%20Data%20and%20Machine%20Learning%20at%20Risk%3A%20Attacks%20Against%20Apache%20NiFi/29900 Gigabyte App Center Backdoor; https://eclypsium.com/blog/supply-chain-risk-from-gigabyte-app-center-backdoor/ Salesforce Ghost Sites https://www.varonis.com/blog/salesforce-ghost-sites CVE-2023-34152: Shell Command Injection in ImageMagick https://securityonline.info/cve-2023-34152-shell-command-injection-bug-affecting-imagemagick/

SANS Internet Stormcenter Daily Network/Cyber Security and Information Security Stormcast

Apache NiFi Attacks https://isc.sans.edu/diary/Your%20Business%20Data%20and%20Machine%20Learning%20at%20Risk%3A%20Attacks%20Against%20Apache%20NiFi/29900 Gigabyte App Center Backdoor; https://eclypsium.com/blog/supply-chain-risk-from-gigabyte-app-center-backdoor/ Salesforce Ghost Sites https://www.varonis.com/blog/salesforce-ghost-sites CVE-2023-34152: Shell Command Injection in ImageMagick https://securityonline.info/cve-2023-34152-shell-command-injection-bug-affecting-imagemagick/

Flying High with Flutter
ImageMagick - Flying High with Flutter #101

Flying High with Flutter

Play Episode Listen Later Mar 8, 2023 40:27


Hi everyone! We had a great time with Haidar Mehsen. Haidar is a Software Developer and is the creator of ImageMagick Plugin which can be used to easily incorporate ImageMagick's functionality into your app. Check out the episode and let us know your thoughts in the comment section below!Resources:https://pub.dev/packages/image_magick_q8https://github.com/Haidar0096On the show:

Day[0] - Zero Days for Day Zero
[bounty] ImageMagick, Cracking SmartLocks, and Broken OAuth

Day[0] - Zero Days for Day Zero

Play Episode Listen Later Mar 7, 2023 41:02


This episode covers a lot of ground, from an insecure OAuth flow (Booking.com) to a crazy JSON injection and fail-open login system (DataHub) to hacking Bluetooth smart locks (Megafeis-palm). And even a new ImageMagick trick for a local file read. Links and vulnerability summaries for this episode are available at: https://dayzerosec.com/podcast/193.html [00:00:00] Introduction [00:00:26] Traveling with OAuth - Account Takeover on Booking.com [00:13:25] Megafeis-palm: Exploiting Vulnerabilities to Open Bluetooth SmartLocks [00:22:46] GitHub Security Lab audited DataHub: Here's what they found [00:33:43] ImageMagick: The hidden vulnerability behind your online images [00:38:49] CI/CD secrets extraction, tips and tricks [00:39:30] A New Vector For “Dirty” Arbitrary File Write to RCE The DAY[0] Podcast episodes are streamed live on Twitch twice a week: -- Mondays at 3:00pm Eastern (Boston) we focus on web and more bug bounty style vulnerabilities -- Tuesdays at 7:00pm Eastern (Boston) we focus on lower-level vulnerabilities and exploits. We are also available on the usual podcast platforms: -- Apple Podcasts: https://podcasts.apple.com/us/podcast/id1484046063 -- Spotify: https://open.spotify.com/show/4NKCxk8aPEuEFuHsEQ9Tdt -- Google Podcasts: https://www.google.com/podcasts?feed=aHR0cHM6Ly9hbmNob3IuZm0vcy9hMTIxYTI0L3BvZGNhc3QvcnNz -- Other audio platforms can be found at https://anchor.fm/dayzerosec You can also join our discord: https://discord.gg/daTxTK9

R Weekly Highlights
Issue 2022-W46 Highlights

R Weekly Highlights

Play Episode Listen Later Nov 16, 2022 41:09


A major achievement unlocked! In episode 100 of RWeekly Highlights: The new {rtoot} package for collecting and analyzing Mastodon data, using the {unheadr} package to fix broken and irregular column headers, a tour of the apply functions in base R, and creating posters of NBA rosters with R and ImageMagick. Plus a big announcement on a new way to directly support the show! Episode Links This week's curator: Ryo Nakagawara - @RbyRyo (https://twitter.com/R_by_Ryo) (Twitter) & @RbyRyo@mstdn.social (https://mstdn.social/@R_by_Ryo) (Mastodon) {rtoot}: Collecting and analyzing mastodon data! (http://blog.schochastics.net/post/rtoot-collecting-and-analyzing-mastodon-data/) Fixing broken and irregular column headers (https://luisdva.github.io/rstats/mash-colnames/) Let's Get Apply'ing (https://drmowinckels.io/blog/2022-11-07-lets-get-applying/) NBA Posters (https://www.abdoulblog.com/posts/2022-09-26_nba-players-squad/nba-players-squad) Entire issue available at rweekly.org/2022-W46 (https://rweekly.org/2022-W46.html) Supplement Resources Everything I know about Mastodon: https://blog.djnavarro.net/posts/2022-11-03_what-i-know-about-mastodon/ Fedi.tips (an unofficial guide to Mastodon and the Fediverse): https://fedi.tips RWeekly is now on Mastodon! @rweekly@fosstodon.org (https://fosstodon.org/@rweekly) Favorite/most important base R functions new users should know: https://twitter.com/newmeyermn/status/1591464874827460608 Supporting the Show New Podcast Apps: https://podcastindex.org/apps?appTypes=app&elements=Value A new way to think about value: https://value4value.info/

Ubuntu Security Podcast
Episode 170

Ubuntu Security Podcast

Play Episode Listen Later Jul 29, 2022 11:09


This week we're diving down into the depths of binary exploitation and analysis, looking at a number of recent vulnerability and malware teardowns, plus we cover security updates for FreeType, PHP, ImageMagick, protobuf-c and more.

php imagemagick
Tech Writer koduje
#40 Tech Writer spełnia swoje marzenia, czyli co i jak można zautomatyzować

Tech Writer koduje

Play Episode Listen Later Mar 17, 2022 54:24


Jedni marzą o drogim samochodzie a drudzy o ekskluzywnych wakacjach w ciepłych krajach. A o czym marzą Tech Writerzy? Odpowiedź znaleźliśmy w newsletterze "Write the Docs" z marca 2022. Okazuje się, że technoskrybowie marzą o tym, żeby pewne elementy ich pracy były zautomatyzowane. Jest to temat bliski naszemu sercu, dlatego postanowiliśmy zmierzyć się z listą życzeń z newslettera. Bazując na swoim doświadczeniu oraz zdobytych informacjach, staramy się zaproponować praktyczne rozwiązania, które przybliżą nasze koleżanki i kolegów po fachu do wymarzonej automatyzacji. Dźwięki wykorzystane w audycji pochodzą z kolekcji "107 Free Retro Game Sounds" dostępnej na stronie https://dominik-braun.net, udostępnianej na podstawie licencji Creative Commons license CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Informacje dodatkowe: Newsletter "Write the Docs", marzec 2022: https://www.writethedocs.org/blog/newsletter-march-2022/ TestCafe: https://testcafe.io/ ImageMagick: https://imagemagick.org/index.php "Simplified User Interface: The Beginner's Guide": https://www.techsmith.com/blog/simplified-user-interface/ Screen Capture API: https://developer.mozilla.org/en-US/docs/Web/API/Screen_Capture_API "Sharing Screens with the New Javascript Screen Capture API": https://fjolt.com/article/javascript-screen-capture-api Biblioteka Pillow: https://pillow.readthedocs.io/en/stable/ Selenium WebDriver: https://www.selenium.dev/documentation/webdriver/ Conventional commits: https://www.conventionalcommits.org Vale: https://github.com/errata-ai/vale "Documentation as code: Part 3: A Linting How To - The Vale Linter in action (Demo)", Tag1: https://www.tag1consulting.com/blog/documentation-code-linting-part3 "Documentation testing", GitLab: https://docs.gitlab.com/14.8/ee/development/documentation/testing.html Alex: https://alexjs.com/ LanguageTool: https://languagetool.org/pl Schematron: https://www.schematron.com/ "Creative writing with GitHub copilot", Chris Ward: https://www.youtube.com/watch?v=V_CmYyvaMqE "Lint, Lint and Away! Linters for the English Language", Chris Ward: https://dzone.com/articles/lint-lint-and-away-linters-for-the-english-languag Code Spell Checker: https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker Gremlins Checker: https://marketplace.visualstudio.com/items?itemName=nhoizey.gremlins "Meet Grazie: the ultimate spelling, grammar, and style checker for IntelliJ IDEA", IntelliJ: https://blog.jetbrains.com/idea/2019/11/meet-grazie-the-ultimate-spelling-grammar-and-style-checker-for-intellij-idea/ Pandoc: https://pandoc.org/ "DITA as code - a modern approach to the classic standard", Tech Writer koduje: https://techwriterkoduje.pl/dita-as-code AutoIt: https://www.autoitscript.com/site/ Bitnami: https://github.com/bitnami

Things Worth Learning
3D Printing, with Erika Heidi

Things Worth Learning

Play Episode Listen Later Feb 25, 2022 44:02


Erika's Twitter - https://twitter.com/erikaheidiErika's Blog - https://eheidi.dev/Sourcegraph Twitter - https://twitter.com/sourcegraphDigital Ocean - https://www.digitalocean.com/Laravel - https://laravel.com/Laracon - https://laracon.net/Prusa - https://www.prusa3d.com/FreeCAD - https://www.freecadweb.org/OpenSCAD - https://openscad.org/ImageMagick - https://imagemagick.org/index.phpPHP: Magic Methods - https://www.php.net/manual/en/language.oop5.magic.phpPencil Holder Tutorial - https://eheidi.dev/blog/3d-design-with-freecad-part-2-working-with-sketcher-part-design-workbenches-3leo

DotNet & More
DotNet&More #64: Новогодний выпуск, фильтрация нюдс и не только

DotNet & More

Play Episode Listen Later Dec 27, 2021 125:43


С наступающим Новым Годом. Обычно в конце декабря мы проводим ретроспективу уходящего года, но в этот раз мы не будем делать "Голубой Огонек". Вместо этого мы пригласили интересного гостя, которая расскажет как работают алгоритмы распознавания изображений и ML. Мы часто экспериментируем и нам очень важно Ваше мнение. Поделитесь им с нами в опросе: https://forms.gle/vAb2rN6MhTK71YMN9 Спасибо всем кто нас слушает. Не стесняйтесь оставлять обратную связь и предлагать свои темы. Shownotes:  0:03:45 Про нюдс фильтры 0:16:05 Свертка 0:22:30 Сверточные нейронные сети 0:31:30 Распознавание без ML 0:44:30 AR и QR коды 0:57:40 Готовимся к экзамену по цифровым изображениям за 20 минут 1:22:50 Про JPEG 1:40:00 Библиотечки 1:49:00 Новости индустрии обработки изображений 2:00:00 С Новым Годом Ссылки: - https://github.com/SixLabors/ImageSharp : ImageSharp  - https://imagemagick.org/ : ImageMagick - https://github.com/dlemstra/Magick.NET : .NET wrapper for the popular ImageMagick - https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/graphics/skiasharp/ : SkiaSharp Graphics in Xamarin.Forms - https://github.com/mono/SkiaSharp : .NET wrapper for Google's Skia - https://www.nuget.org/packages/CoreCompat.System.Drawing.v2/ : CoreCompat.System.Drawing.v2 - https://opencv.org/ : OpenCV Ссылка на видео: https://www.youtube.com/watch?v=S8olOE66Fnk Cлушайте все выпуски: https://anchor.fm/dotnetmore YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3R6kfpa7Q8biS11T56cNMf5 Обсуждайте: - VK: https://vk.com/dotnetmore - Telegram: https://t.me/dotnetmore_chat Следите за новостями: – Twitter: https://twitter.com/dotnetmore – Telegram channel: https://t.me/dotnetmore Copyright: https://creativecommons.org/licenses/by-sa/4.0/

Ubuntu Security Podcast

A gnarly old bug in NSS is unearthed, plus we cover security updates for ICU, the Linux kernel and ImageMagick as well.

icu linux nss imagemagick
Remote Ruby
Making Magic with ImageMagick

Remote Ruby

Play Episode Listen Later Oct 1, 2021 42:43


[00:03:38] Jason tells us about an interesting project he's been working on this week with a Mockup Generator, and he's on the Ruby side of it now. He tells us how he's rendering the images on top of each other with a React component called Design.[00:09:29] Andrew asks Jason what happens if you have a P and G layer on top of a JPEG. Chris wonders if Jason is doing the commands with image processing, MiniMagick, or RMagick, and if he's doing all of them once or two at a time. Jason mentions looking into Cloudinary and Andrew gives a shout out to Cloudinary. [00:14:22] Find out what ImageMagick is and how magical it is. [00:15:56] Jason talks about hoping to put this project out soon, moving it off Webpacker to esbuild and Chris explains us how easy it was for him with Jumpstart to move everything over in an hour from Webpacker, to esbuild, and the CSS bundling.[00:25:41] The guys chat about the good laugh they had on Twitter about Rails 7. Andrew tells us he started the upgrade and he had a turbo links thing going on.  Jason tells us they haven't used Turbolinks at Podia but they're trying Turbo in certain parts of the app. [00:27:50] Chris asks Jason with the upgrade process and Turbo trying to take over all your forms and links if he's doing that piecemeal. Jason explains what Andrea came up with for them, and Andrew comments that is going to solve all his problems. ☺[00:31:06] Andrew announces he's been trying to get Konnor on this show for a while to talk about mru.js, so this is his invitation to come on! [00:35:00] We're taking the back roads to the end with the guys chatting about Mailchimp being sold for $12 billion to Intuit, hope that MicroConf happens next year, and why Jason thinks he lives in St. Louis, which has to do with him being on Reddit. Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Ruby Radar NewsletterRuby Radar TwitterRubyConf 2021ImageMagickRMagick-GitHubImageProcessing-GitHubCloudinaryThe Ruby on Rails Podcast-Episode 368: Frontend Bundlers & Snowpack with Konnor RogersTweet by Chris Oliver to Andrew and Jason about the upgradeMicroConf

Remote Ruby
Red Pill-Blue Pill and CSS Bundling

Remote Ruby

Play Episode Listen Later Sep 24, 2021 51:53


[00:03:19] Jason tells us about a side project he's working on which is mostly JavaScript, but he's also using ImageMagick.[00:04:46] Andrew gets off topic and asks the guys if they saw the trailer for The Matrix 4 and he reveals a fun fact about the website.  Chris asks the guys if they've watched any of the CSS bundling stuff that's going on and he fills us in on what's going on.  [00:11:33] We find out what happened when Jason decides he wants to figure out the config file for esbuild and we learn what DHH's response was on the PR when Jason opened it the next day.  [00:17:05] The guys chat about RubyConf and whether or not it will happen in-person. Andrew talks about a meetup he went to recently and he brings up an old Bike Shed episode and he shares a story from it about “The Nodder.” [00:21:43] Chris announces he's doing an online talk for Sardines.rb you can check out.[00:25:37] Speaking of new Ruby stuff, Chris asks the guys if they've tried the newDebugger and the guys chat more about it.[00:30:00] Andrew and Chris talk about what bothers them about error messages and Andrew and Chris discuss using Pry.  [00:35:51] Andrew asks Chris if there's anything with Stripe invoices that Pay can do. Also, Chris explains one of the big changes he did in v3.  [00:43:37] Chris tells us he upgraded his very old Stripe code from GoRails to Stripe Checkout which is amazing, and he tells us a cool thing you can do with StripeCheckout.[00:48:39] Andrew lets us know about an app called RDM he uses to automatically resize his whole computer screen.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Ruby Radar NewsletterRuby Radar TwitterImageMagickThe Matrix 4 TrailerRubyConf 2021 DenverPry-GitHubSardines.rb with Chris OliverPay-GitHubStripe CheckoutRDM-GitHub

Der GameDev Podcast
Tech Art aka "Hurra ein Problem!"

Der GameDev Podcast

Play Episode Listen Later Sep 1, 2021 209:21 Transcription Available


Drei fröhliche Tech Artists reden über Tech Art und erkennen, dass der Begriff jeweils etwas ganz anderes bedeutet. Hier ein grober Überlick unserer Themen: Studium. Unity Kurs. Plugins. Command Line. Lieblings-Tools. Notion. Tech Talks. Vertices, Normals und UVs. Blueprints. RClone. ImageMagick. Festivals. Museum. Sport.

Ubuntu Security Podcast
Episode 120

Ubuntu Security Podcast

Play Episode Listen Later Jun 18, 2021 10:16


In this week's episode we look at how to get media coverage for your shiny new vulnerability, plus we cover security updates for ExifTool, ImageMagick, BlueZ and more.

bluez imagemagick
More Than Just Code podcast - iOS and Swift development, news and advice
Episode 321: Generate Memberwise Initializer

More Than Just Code podcast - iOS and Swift development, news and advice

Play Episode Listen Later Dec 13, 2020 81:07


We fact check M1 RAM, and Photoshop on Rosetta2. AskMTJC brings us Story of third Apple founder, Maple spirits, and CloudKit on NSPersistentCloudKitContainer. Use Amazon EC2 Mac Instances to Build & Test macOS, iOS, ipadOS, tvOS, and watchOS Apps. Apple Fitness Plus will launch on December 14th. Family Setup on Apple Watch is coming to Canada. Xcode 12.3 RC available. iPhone zero-click Wi-Fi exploit is one of the most breathtaking hacks ever. Apple announces $549 AirPods Max noise-canceling headphones, coming December 15th. No U1 chip in AirPods Max. More Apple Silicon leaks. Picks: Fastlane for App Screenshots, James Dempsey made Swift Version for quick reference, 9 Xcode Tips by Paul Hudson, Quick Tip: Enable Touch ID for sudo, Elago Classic Mac Apple Watch charging stands. After Show: App development as Lego.

Tech Writer koduje
#20 Tech Writer optymalizuje, czyli web performance w dokumentacji

Tech Writer koduje

Play Episode Listen Later Aug 6, 2020 37:07


Wydajność to temat rzadko poruszany w tech writingu, pomimo tego, że webowa forma dokumentacji jest bardzo popularna. Czy szybkość ładowania stron ma znaczenie dla naszych odbiorców? A jeśli tak, to czy Tech Writer ma jakiś wpływ na wydajność dokumentacji? Rozmawiamy o tym jak mierzyć i poprawiać web performance. Zastanawiamy się co może zrobić w tej kwestii Tech Writer, a co musi wdrożyć programista lub inżynier DevOps. Wreszcie rozmawiamy o tym, że w dokumentacji performance to nie wszystko. Informacje dodatkowe: Web performance: https://en.wikipedia.org/wiki/Web_performance "How to Improve Your Page Load Speed by 70.39% in 45 Minutes": https://www.ventureharbour.com/improving-site-speed/ TinyPNG: https://tinypng.com/ ImageMagick: https://imagemagick.org/index.php Gzip: https://www.gnu.org/software/gzip/ Chunking w standardzie DITA: https://docs.oasis-open.org/dita/v1.2/os/spec/archSpec/chunking.html Minifikacja: https://pl.wikipedia.org/wiki/Minifikacja HTTP caching: https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching WordPress: https://wordpress.com "What Are Static Site Generators?": https://www.netguru.com/blog/what-are-static-site-generators Google PageSpeed Insights: https://developers.google.com/speed/pagespeed/insights/ Google Lighthouse: https://developers.google.com/web/tools/lighthouse Docusaurus: https://docusaurus.io/

Podcast Ubuntu Portugal
Ep 90 – O insecto contra-ataca

Podcast Ubuntu Portugal

Play Episode Listen Later May 14, 2020 56:48


Neste episódio o discutimos tomadas inteligentes, extensões, gestão de cabos e controlo de consumo, redes e equipamento de redes, webcams, revisitamos a questão do ImageMagick no Nextcloud, imagens de Ubuntu […]

Podcast Ubuntu Portugal
E90 O Insecto Contra-Ataca

Podcast Ubuntu Portugal

Play Episode Listen Later May 14, 2020 56:48


Neste episódio o discutimos tomadas inteligentes, extensões, gestão de cabos e controlo de consumo, redes e equipamento de redes, webcams, revisitamos a questão do ImageMagick no Nextcloud, imagens de Ubuntu Server.

Ubuntu Security Podcast

Security updates for DPDK, Linux kernel, QEMU, ImageMagick, Ghostscript and more, plus Joe and Alex talk about how to get into information security.

Ubuntu Security Podcast

This week we look at the latest security updates for the Linux kernel, Firefox, ImageMagick, OpenStack and more, plus we have a special guest, the maintainer and lead developer of the AppArmor project, John Johansen, to talk about the project and some of the upcoming features.

linux firefox openstack imagemagick apparmor
Ubuntu Security Podcast

This week we look at some details of the 78 unique CVEs addressed across the supported Ubuntu releases including more GhostScript, ImageMagick, WebKitGTK, Linux kernel and more.

linux ubuntu cves imagemagick
Antago - CISO Summit
CISO Summit: KW 34 2018 - GhostScript #USBHarpoon und wichtige Patches!

Antago - CISO Summit

Play Episode Listen Later Aug 30, 2018 7:13


In Kalenderwoche 34 geht es im CISO Summit um um ein neues kritisches Problem bei GhostScript, USBHarpoon und wichtigen Patches. #CisoSummit #Ghostscript #USBHarpoon GhostScript ———————————————————————— // ImageMagick, Evince, GIMP, and most other PDF/PS tools Im Ghostscript-Interpreter wurden kritische Sicherheitslücken entdeckt. Diese sind auch vergleichsweise leicht auszunutzen und Proof of Concept Quellcode wird von den Entdeckern gleich mitgeliefert. Laut den Entdeckern wird die Sicherheitslücke auch bereits aktiv ausgenutzt. Über die Lücken können Dateien ausgelesen und Schadcode ausgeführt werden. Die Sicherheitslücke tritt in dem Ghostscript-Interpreter auf. Somit sind Programm wie ImageMagick, Gimp und viele weitere PDF/PS-Tools betroffen. Besonders gefährlich wird die Lücke bei Webservern. Dort kann ein Angreifer Informationen auslesen, oder direkt Systemfunktionen ausführen. Patches gibt es noch nicht, aber das Sicherheitsproblem kann behoben werden, indem die policy.xml von ImageMagick angepasst wird. Dort sollten die Dateitypen PS, EPS, PDF und XPS durch folgende Zeilen deaktiviert werden: Quellen: https://bugs.chromium.org/p/project-zero/issues/detail?id=1640 https://www.kb.cert.org/vuls/id/332928 Tags: #RemoteCodeExecution #ImageMagick #GhostScript #USBHarpoon ———————————————————————— USBHarpoon ist ein Angriffsvektor, der auf dem im Jahr 2014 vorgestellten BadUSB basiert. Bei BadUSB wurde die Firmware von USB-Geräten wie zum Beispiel USB-Sticks manipuliert. So konnte der Stick nicht nur Daten speichern, sondern auch Befehle ausführen und somit Code auf dem Rechner ausführen. Da USB-Ladekabel seit einiger Zeit nicht nur Kabel sind, sondern auch Microcontroller implementiert haben, wurde nun festgestellt, dass diese das gleiche Problem aufweisen. Der Sicherheitsforscher hat auch gleich den Schutzmechanismus von sogenannten USB-Kondomen ausgehebelt. Dadurch soll die Datenübertragung via USB deaktiviert werden und nur noch reines Laden erlaubt sein. Da mittlerweile auch Laptops über einfache USB-Kabel geladen werden und Smartphones sowieso, ist die Angriffsfläche recht groß. Jedoch muss das USB-Kabel aktiv eingesteckt werden. Es sollte also darauf geachtet werden, dass keine Fremden und als unsicher erscheinden USB-Kabel verwendet werden. Dazu könnten zum Beispiel öffentliche Ladestationen zählen. Quellen: https://vincentyiu.co.uk/usbharpoon/ http://mg.lol/blog/badusb-cables/ Tags: #USBHarpoon #BadUSB #CodeExecution Patches ———————————————————————— Auch diese Woche wurden einige wichtige Patches veröffentlicht. Apache Struts, Photoshop CC und OpenSSH sollten gepacht werden. Der Patch für den Apache Struts Webserver beseitigt eine gefährliche Remote-Code-Execution Lücke. Hier schließt der Patch lediglich die Sicherheitslücke und sollte deshalb keine Probleme bereiten. Auch der Patch für Photoshop CC schließt eine kritische Remote Code Exection Lücke. Die Lücke betrifft die Windows- und macOS-Version. Der SSH-Patch schließt eine 19 Jahre alte Sicherheitslücke in OpenSSH. Darüber kann herausgefunden werden, ob ein Benutzer existiert oder nicht. Somit ist es ein Informationsabfluss, wodurch ein Angreifer im Anschluss versuchen kann das Passwort durch Bruteforcen zu knacken. Quellen: https://cwiki.apache.org/confluence/display/WW/S2-057 https://helpx.adobe.com/security/products/photoshop/apsb18-28.html http://seclists.org/oss-sec/2018/q3/124 Tags: #Patchen #ApacheStruts #RemoteCodeExecution #SSH #OpenSSH #PhotoshopCC Diese Woche wurde das CISO Summit von Alexander Dörsam präsentiert. Besuchen Sie uns auf https://antago.info

RadiOps
Episode 10

RadiOps

Play Episode Listen Later Mar 20, 2018 4:49


RadiOps Episode #10 * http://tech.mybuilder.com/memes-as-a-service-using-lambda-serverless-and-imagemagick/ - 'Memes as a Service' using Lambda, Serverless and ImageMagick. * https://github.com/readerself/readerself - Self-hosted rss reader, Google Reader alternative. * https://github.com/Manisso/fsociety - fsociety Hacking Tools Pack – A Penetration Testing Framework. * https://github.com/graphcool/chromeless - Chrome automation made simple. Runs locally or headless on AWS Lambda. * https://github.com/oliver006/elasticsearch-gmail - Index your Gmail Inbox with Elasticsearch. * https://github.com/stefanprodan/mgob - MongoDB dockerized backup agent. Runs schedule backups with retention, S3 & SFTP upload, notifications, instrumentation with Prometheus and more. * https://github.com/openfaas/faas-netes - Serverless Kubernetes with OpenFaaS (Functions as a Service). If you have any stories you would like us to share, feel free to email us at radiops@devopspro.co.uk.

BSD Now
213: The French CONnection

BSD Now

Play Episode Listen Later Sep 27, 2017 91:00


We recap EuroBSDcon in Paris, tell the story behind a pf PR, and show you how to do screencasting with OpenBSD. This episode was brought to you by Headlines Recap of EuroBSDcon 2017 in Paris, France (https://2017.eurobsdcon.org) EuroBSDcon was held in Paris, France this year, which drew record numbers this year. With over 300 attendees, it was the largest BSD event I have ever attended, and I was encouraged by the higher than expected number of first time attendees. The FreeBSD Foundation held a board meeting on Wednesday afternoon with the members who were in Paris. Topics included future conferences (including a conference kit we can mail to people who want to represent FreeBSD) and planning for next year. The FreeBSD Devsummit started on Thursday at the beautiful Mozilla Office in Paris. After registering and picking up our conference bag, everyone gathered for a morning coffee with lots of handshaking and greeting. We then gathered in the next room which had a podium with microphone, screens as well as tables and chairs. After developers sat down, Benedict opened the devsummit with a small quiz about France for developers to win a Mogics Power Bagel (https://www.mogics.com/?page_id=3824). 45 developers participated and DES won the item in the end. After introductions and collecting topics of interest from everyone, we started with the Work in Progress (WIP) session. The WIP session had different people present a topic they are working on in 7 minute timeslots. Topics ranged from FreeBSD Forwarding Performance, fast booting options, and a GELI patch under review to attach multiple providers. See their slides on the FreeBSD wiki (https://wiki.freebsd.org/DevSummit/201709). After lunch, the FreeBSD Foundation gave a general update on staff and funding, as well as a more focused presentation about our partnership with Intel. People were interested to hear what was done so far and asked a few questions to the Intel representative Glenn Weinberg. After lunch, developers worked quietly on their own projects. The mic remained open and occasionally, people would step forward and gave a short talk without slides or motivated a discussion of common interest. The day concluded with a dinner at a nice restaurant in Paris, which allowed to continue the discussions of the day. The second day of the devsummit began with a talk about the CAM-based SDIO stack by Ilya Bakulin. His work would allow access to wifi cards/modules on embedded boards like the Raspberry Pi Zero W and similar devices as many of these are using SDIO for data transfers. Next up was a discussion and Q&A session with the FreeBSD core team members who were there (missing only Benno Rice, Kris Moore, John Baldwin, and Baptiste Daroussin, the latter being busy with conference preparations). The new FCP (FreeBSD community proposals) were introduced for those who were not at BSDCan this year and the hows and whys about it. Allan and I were asked to describe our experiences as new members of core and we encouraged people to run for core when the next election happens. After a short break, Scott Long gave an overview of the work that's been started on NUMA (Non-Uniform Memory Architecture), what the goals of the project are and who is working on it. Before lunch, Christian Schwarz presented his work on zrepl, a new ZFS replication solution he developed using Go. This sparked interest in developers, a port was started (https://reviews.freebsd.org/D12462) and people suggested to Christian that he should submit his talk to AsiaBSDcon and BSDCan next year. Benedict had to leave before lunch was done to teach his Ansible tutorial (which was well attended) at the conference venue. There were organized dinners, for those two nights, quite a feat of organization to fit over 100 people into a restaurant and serve them quickly. On Saturday, there was a social event, a river cruise down the Seine. This took the form of a ‘standing' dinner, with a wide selection of appetizer type dishes, designed to get people to walk around and converse with many different people, rather than sit at a table with the same 6-8 people. I talked to a much larger group of people than I had managed to at the other dinners. I like having both dinner formats. We would also like to thank all of the BSDNow viewers who attended the conference and made the point of introducing themselves to us. It was nice to meet you all. The recordings of the live video stream from the conference are available immediately, so you can watch the raw versions of the talks now: Auditorium Keynote 1: Software Development in the Age of Heroes (https://youtu.be/4iR8g9-39LM?t=179) by Thomas Pornin (https://twitter.com/BearSSLnews) Tuning FreeBSD for routing and firewalling (https://youtu.be/4iR8g9-39LM?t=1660) by Olivier Cochard-Labbé (https://twitter.com/ocochardlabbe) My BSD sucks less than yours, Act I (https://youtu.be/4iR8g9-39LM?t=7040) by Antoine Jacoutot (https://twitter.com/ajacoutot) and Baptiste Daroussin (https://twitter.com/_bapt_) My BSD sucks less than yours, Act II (https://youtu.be/4iR8g9-39LM?t=14254) by Antoine Jacoutot (https://twitter.com/ajacoutot) and Baptiste Daroussin (https://twitter.com/_bapt_) Reproducible builds on NetBSD (https://youtu.be/4iR8g9-39LM?t=23351) by Christos Zoulas Your scheduler is not the problem (https://youtu.be/4iR8g9-39LM?t=26845) by Martin Pieuchot Keynote 2: A French story on cybercrime (https://youtu.be/4iR8g9-39LM?t=30540) by Éric Freyssinet (https://twitter.com/ericfreyss) Case studies of sandboxing base system with Capsicum (https://youtu.be/jqdHYEH_BQY?t=731) by Mariusz Zaborski (https://twitter.com/oshogbovx) OpenBSD's small steps towards DTrace (a tale about DDB and CTF) (https://youtu.be/jqdHYEH_BQY?t=6030) by Jasper Lievisse Adriaanse The Realities of DTrace on FreeBSD (https://youtu.be/jqdHYEH_BQY?t=13096) by George Neville-Neil (https://twitter.com/gvnn3) OpenSMTPD, current state of affairs (https://youtu.be/jqdHYEH_BQY?t=16818) by Gilles Chehade (https://twitter.com/PoolpOrg) Hoisting: lessons learned integrating pledge into 500 programs (https://youtu.be/jqdHYEH_BQY?t=21764) by Theo de Raadt Keynote 3: System Performance Analysis Methodologies (https://youtu.be/jqdHYEH_BQY?t=25463) by Brendan Gregg (https://twitter.com/brendangregg) Closing Session (https://youtu.be/jqdHYEH_BQY?t=29355) Karnak “Is it done yet ?” The never ending story of pkg tools (https://youtu.be/1hjzleqGRYk?t=71) by Marc Espie (https://twitter.com/espie_openbsd) A Tale of six motherboards, three BSDs and coreboot (https://youtu.be/1hjzleqGRYk?t=7498) by Piotr Kubaj and Katarzyna Kubaj State of the DragonFly's graphics stack (https://youtu.be/1hjzleqGRYk?t=11475) by François Tigeot From NanoBSD to ZFS and Jails – FreeBSD as a Hosting Platform, Revisited (https://youtu.be/1hjzleqGRYk?t=16227) by Patrick M. Hausen Bacula – nobody ever regretted making a backup (https://youtu.be/1hjzleqGRYk?t=20069) by Dan Langille (https://twitter.com/DLangille) Never Lose a Syslog Message (https://youtu.be/qX0BS4P65cQ?t=325) by Alexander Bluhm Running CloudABI applications on a FreeBSD-based Kubernetes cluster (https://youtu.be/qX0BS4P65cQ?t=5647) by Ed Schouten (https://twitter.com/EdSchouten) The OpenBSD web stack (https://youtu.be/qX0BS4P65cQ?t=13255) by Michael W. Lucas (https://twitter.com/mwlauthor) The LLDB Debugger on NetBSD (https://youtu.be/qX0BS4P65cQ?t=16835) by Kamil Rytarowski What's in store for NetBSD 8.0? (https://youtu.be/qX0BS4P65cQ?t=21583) by Alistair Crooks Louxor A Modern Replacement for BSD spell(1) (https://youtu.be/6Nen6a1Xl7I?t=156) by Abhinav Upadhyay (https://twitter.com/abhi9u) Portable Hotplugging: NetBSD's uvm_hotplug(9) API development (https://youtu.be/6Nen6a1Xl7I?t=5874) by Cherry G. Mathew Hardening pkgsrc (https://youtu.be/6Nen6a1Xl7I?t=9343) by Pierre Pronchery (https://twitter.com/khorben) Discovering OpenBSD on AWS (https://youtu.be/6Nen6a1Xl7I?t=14874) by Laurent Bernaille (https://twitter.com/lbernail) OpenBSD Testing Infrastructure Behind bluhm.genua.de (https://youtu.be/6Nen6a1Xl7I?t=18639) by Jan Klemkow The school of hard knocks – PT1 (https://youtu.be/8wuW8lfsVGc?t=276) by Sevan Janiyan (https://twitter.com/sevanjaniyan) 7 years of maintaining firefox, and still looking ahead (https://youtu.be/8wuW8lfsVGc?t=5321) by Landry Breuil Branch VPN solution based on OpenBSD, OSPF, RDomains and Ansible (https://youtu.be/8wuW8lfsVGc?t=12385) by Remi Locherer Running BSD on AWS (https://youtu.be/8wuW8lfsVGc?t=15983) by Julien Simon and Nicolas David Getting started with OpenBSD device driver development (https://youtu.be/8wuW8lfsVGc?t=21491) by Stefan Sperling A huge thanks to the organizers, program committee, and sponsors of EuroBSDCon. Next year, EuroBSDcon will be in Bucharest, Romania. *** The story of PR 219251 (https://www.sigsegv.be//blog/freebsd/PR219251) The actual story I wanted Kristof to tell, the pf bug he fixed at the Essen Hackathon earlier this summer. As I threatened to do in my previous post, I'm going to talk about PR 219251 for a bit. The bug report dates from only a few months ago, but the first report (that I can remeber) actually came from Shawn Webb on Twitter, of all places Despite there being a stacktrace it took quite a while (nearly 6 months in fact) before I figured this one out. It took Reshad Patuck managing to distill the problem down to a small-ish test script to make real progress on this. His testcase meant that I could get core dumps and experiment. It also provided valuable clues because it could be tweaked to see what elements were required to trigger the panic. This test script starts a (vnet) jail, adds an epair interface to it, sets up pf in the jail, and then reloads the pf rules on the host. Interestingly the panic does not seem to occur if that last step is not included. Obviously not the desired behaviour, but it seems strange. The instances of pf in the jails are supposed to be separate. We try to fetch a counter value here, but instead we dereference a bad pointer. There's two here, so already we need more information. Inspection of the core dump reveals that the state pointer is valid, and contains sane information. The rule pointer (rule.ptr) points to a sensible location, but the data is mostly 0xdeadc0de. This is the memory allocator being helpful (in debug mode) and writing garbage over freed memory, to make use-after-free bugs like this one easier to find. In other words: the rule has been free()d while there was still a state pointing to it. Somehow we have a state (describing a connection pf knows about) which points to a rule which no longer exists. The core dump also shows that the problem always occurs with states and rules in the default vnet (i.e. the host pf instance), not one of the pf instances in one of the vnet jails. That matches with the observation that the test script does not trigger the panic unless we also reload the rules on the host. Great, we know what's wrong, but now we need to work out how we can get into this state. At this point we're going to have to learn something about how rules and states get cleaned up in pf. Don't worry if you had no idea, because before this bug I didn't either. The states keep a pointer to the rule they match, so when rules are changed (or removed) we can't just delete them. States get cleaned up when connections are closed or they time out. This means we have to keep old rules around until the states that use them expire. When rules are removed pfunlinkrule() adds then to the Vpfunlinkedrules list (more on that funny V prefix later). From time to time the pf purge thread will run over all states and mark the rules that are used by a state. Once that's done for all states we know that all rules that are not marked as in-use can be removed (because none of the states use it). That can be a lot of work if we've got a lot of states, so pfpurgethread() breaks that up into smaller chuncks, iterating only part of the state table on every run. We iterate over all of our virtual pf instances (VNETFOREACH()), check if it's active (for FreeBSD-EN-17.08, where we've seen this code before) and then check the expired states with pfpurgeexpiredstates(). We start at state 'idx' and only process a certain number (determined by the PFTMINTERVAL setting) states. The pfpurgeexpiredstates() function returns a new idx value to tell us how far we got. So, remember when I mentioned the odd V_ prefix? Those are per-vnet variables. They work a bit like thread-local variables. Each vnet (virtual network stack) keeps its state separate from the others, and the V_ variables use a pointer that's changed whenever we change the currently active vnet (say with CURVNETSET() or CURVNETRESTORE()). That's tracked in the 'curvnet' variable. In other words: there are as many Vpfvnetactive variables as there are vnets: number of vnet jails plus one (for the host system). Why is that relevant here? Note that idx is not a per-vnet variable, but we handle multiple pf instances here. We run through all of them in fact. That means that we end up checking the first X states in the first vnet, then check the second X states in the second vnet, the third X states in the third and so on and so on. That of course means that we think we've run through all of the states in a vnet while we really only checked some of them. So when pfpurgeunlinkedrules() runs it can end up free()ing rules that actually are still in use because pfpurgethread() skipped over the state(s) that actually used the rule. The problem only happened if we reloaded rules in the host, because the active ruleset is never free()d, even if there are no states pointing to the rule. That explains the panic, and the fix is actually quite straightforward: idx needs to be a per-vnet variable, Vpfpurge_idx, and then the problem is gone. As is often the case, the solution to a fairly hard problem turns out to be really simple. As you might expect, finding the problem takes a lot more work that fixing it Thanks to Kristof for writing up this detailed post explaining how the problem was found, and what caused it. *** vBSDcon 2017: BSD at Work (https://www.ixsystems.com/blog/vbsdcon-2017-dexter/) The third biennial vBSDcon hosted by Verisign took place September 7th through 9th with the FreeBSD Developer Summit taking place the first day. vBSDcon and iXsystems' MeetBSD event have been alternating between the East and West coasts of the U.S.A. and these two events play vital roles in reaching Washington, DC-area and Bay Area/Silicon Valley audiences. Where MeetBSD serves many BSD Vendors, vBSDcon attracts a unique government and security industry demographic that isn't found anywhere else. Conference time and travel budgets are always limited and bringing these events to their attendees is a much-appreciated service provided by their hosts. The vBSDcon FreeBSD DevSummit had a strong focus on OpenZFS, the build system and networking with the FreeBSD 12 wish list of features in mind. How to best incorporate the steady flow of new OpenZFS features into FreeBSD such as dataset-level encryption was of particular interest. This feature from a GNU/Linux-based storage vendor is tribute to the growth of the OpenZFS community which is vital in light of the recent “Death of Solaris and ZFS” at Oracle. There has never been more demand for OpenZFS on FreeBSD and the Oracle news further confirms our collective responsibility to meet that demand. The official conference opened with my talk on “Isolated BSD Build Environments” in which I explained how the bhyve hypervisor can be used to effortlessly tour FreeBSD 5.0-onward and build specific source releases on demand to trace regressions to their offending commit. I was followed by a FreeNAS user who made the good point that FreeNAS is an exemplary “entry vector” into Unix and Enterprise Storage fundamentals, given that many of the vectors our generation had are gone. Where many of us discovered Unix and the Internet via console terminals at school or work, smart phones are only delivering the Internet without the Unix. With some irony, both iOS and Android are Unix-based yet offer few opportunities for their users to learn and leverage their Unix environments. The next two talks were The History and Future of Core Dumps in FreeBSD by Sam Gwydir and Using pkgsrc for multi-platform deployments in heterogeneous environments by G. Clifford Williams. I strongly recommend that anyone wanting to speak at AsiaBSDCon read Sam's accompanying paper on core dumps because I consider it the perfect AsiaBSDCon topic and his execution is excellent. Core dumps are one of those things you rarely think about until they are a DROP EVERYTHING! priority. G. Clifford's talk was about what I consider a near-perfect BSD project: pkgsrc, the portable BSD package manager. I put it up there with OpenSSH and mandoc as projects that have provided significant value to other Open Source operating systems. G. Clifford's real-world experiences are perfectly inline with vBSDcon's goal to be more production-oriented than other BSDCons. Of the other talks, any and all Dtrace talks are always appreciated and George Neville-Neil's did not disappoint. He based it on his experiences with the Teach BSD project which is bringing FreeBSD-based computer science education to schools around the world. The security-related talks by John-Mark Gurney, Dean Freeman and Michael Shirk also represented vBSDcon's consideration of the local community and made a convincing point that the BSDs should make concerted efforts to qualify for Common Criteria, FIPS, and other Government security requirements. While some security experts will scoff at these, they are critical to the adoption of BSD-based products by government agencies. BSD Now hosts Allan Jude and Benedict Reuschling hosted an OpenZFS BoF and Ansible talk respectively and I hosted a bhyve hypervisor BoF. The Hallway Track and food at vBSDcon were excellent and both culminated with an after-dinner dramatic reading of Michael W. Lucas' latest book that raised money for the FreeBSD Foundation. A great time was had by all and it was wonderful to see everyone! News Roundup FreeBSD 10.4-RC2 Available (https://lists.freebsd.org/pipermail/freebsd-stable/2017-September/087848.html) FreeBSD 10.4 will be released soon, this is the last chance to find bugs before the official release is cut. Noteworthy Changes Since 10.4-RC1: Given that the amd64 disc1 image was overflowing, more of the base components installed into the disc1 (live) file systems had to be disabled. Most notably, this removed the compiler toolchain from the disc1 images. All disabled tools are still available with the dvd1 images, though. The aesni(4) driver now no longer shares a single FPU context across multiple sessions in multiple threads, addressing problems seen when employing aesni(4) for ipsec(4). Support for netmap(4) by the ixgbe(4) driver has been brought into line with the netmap(4) API present in stable/10. Also, ixgbe(4) now correctly handles VFs in its netmap(4) support again instead of treating these as PFs. During the creation of amd64 and i386 VM images, etcupdate(8) and mergemaster(8) databases now are bootstrapped, akin to what happens along the extraction of base.txz as part of a new installation via bsdinstall(8). This change allows for both of these tools to work out-of-box on the VM images and avoids errors seen when upgrading these images via freebsd-update(8). If you are still on the stable/10 branch, you should test upgrading to 10.4, and make sure there are no problems with your workload Additional testing specifically of the features that have changed since 10.4-BETA1 would also be most helpful This will be the last release from the stable/10 branch *** OpenBSD changes of note 628 (https://www.tedunangst.com/flak/post/openbsd-changes-of-note-628) EuroBSDCon in two weeks. Be sure to attend early and often. Many and various documentation improvements for libcrypto. New man pages, rewrites, expanded bugs sections, and more. Only allow upward migration in vmd. There's a README for the syspatch build system if you want to run your own. Move the kernel relinking code from /etc/rc into a seperate script usable by syspatch. Kernel patches can now be reduced to just the necessary files. Make the callers of sogetopt() responsible for allocating memory. Now allocation and free occur in the same place. Use waitpid() instead of wait() in most programs to avoid accidentally collecting the wrong child. Have cu call isatty() before making assumptions. Switch mandoc rendering of mathematical symbols and greek letters from trying to imitate the characters' graphical shapes, which resulted in unintelligible renderings in many cases, to transliterations conveying the characters' meanings. Update libexpat to 2.2.4. Fix copying partial UTF-8 characters. Sigh, here we go again. Work around bug in F5's handling of the supported elliptic curves extension. RFC 4492 only defines elliptic_curves for ClientHello. However, F5 is sending it in ServerHello. We need to skip over it since our TLS extension parsing code is now more strict. After a first install, run syspatch -c to check for patches. If SMAP is present, clear PSL_AC on kernel entry and interrupt so that only the code in copy{in,out}* that need it run with it set. Panic if it's set on entry to trap() or syscall(). Prompted by Maxime Villard's NetBSD work. Errata. New drivers for arm: rktemp, mvpinctrl, mvmpic, mvneta, mvmdio, mvpxa, rkiic, rkpmic. No need to exec rm from within mandoc. We know there's exactly one file and directory to remove. Similarly with running cmp. Revert to Mesa 13.0.6 to hopefully address rendering issues a handful of people have reported with xpdf/fvwm on ivy bridge with modesetting driver. Rewrite ALPN extension using CBB/CBS and the new extension framework. Rewrite SRTP extension using CBB/CBS and the new extension framework. Revisit 2q queue sizes. Limit the hot queue to 1/20th the cache size up to a max of 4096 pages. Limit the warm and cold queues to half the cache. This allows us to more effectively notice re-interest in buffers instead of losing it in a large hot queue. Add glass console support for arm64. Probably not yet for your machine, though. Replace heaps of hand-written syscall stubs in ld.so with a simpler framework. 65535 is a valid port to listen on. When xinit starts an X server that listens only on UNIX socket, prefer DISPLAY=unix:0 rather than DISPLAY=:0. This will prevent applications from ever falling back to TCP if the UNIX socket connection fails (such as when the X server crashes). Reverted. Add -z and -Z options to apmd to auto suspend or hibernate when low on battery. Remove the original (pre-IETF) chacha20-poly1305 cipher suites. Add urng(4) which supports various USB RNG devices. Instead of adding one driver per device, start bundling them into a single driver. Remove old deactivated pledge path code. A replacement mechanism is being brewed. Fix a bug from the extension parsing rewrite. Always parse ALPN even if no callback has been installed to prevent leaving unprocessed data which leads to a decode error. Clarify what is meant by syslog priorities being ordered, since the numbers and priorities are backwards. Remove a stray setlocale() from ksh, eliminating a lot of extra statically linked code. Unremove some NPN symbols from libssl because ports software thinks they should be there for reasons. Fix saved stack location after resume. Somehow clang changed it. Resume works again on i386. Improve error messages in vmd and vmctl to be more informative. Stop building the miniroot installer for OMAP3 Beagleboards. It hasn't worked in over a year and nobody noticed. Have the callers of sosetopt() free the mbuf for symmetry. On octeon, let the kernel use the hardware FPU even if emulation is compiled in. It's faster. Fix support for 486DX CPUs by not calling cpuid. I used to own a 486. Now I don't. Merge some drm fixes from linux. Defer probing of floppy drives, eliminating delays during boot. Better handling of probes and beacons and timeouts and scans in wifi stack to avoid disconnects. Move mutex, condvar, and thread-specific data routes, pthreadonce, and pthreadexit from libpthread to libc, along with low-level bits to support them. Let's thread aware (but not actually threaded) code work with just libc. New POSIX xlocale implementation. Complete as long as you only use ASCII and UTF-8, as you should. Round and round it goes; when 6.2 stops, nobody knows. A peak at the future? *** Screencasting with OpenBSD (http://eradman.com/posts/screencasting.html) USB Audio Any USB microphone should appear as a new audio device. Here is the dmesg for my mic by ART: uaudio0 at uhub0 port 2 configuration 1 interface 0 "M-One USB" rev 1.10/0.01 addr 2 uaudio0: audio rev 1.00, 8 mixer controls audio1 at uaudio0 audioctl can read off all of the specific characterisitcs of this device $ audioctl -f /dev/audio1 | grep record mode=play,record record.rate=48000 record.channels=1 record.precision=16 record.bps=2 record.msb=1 record.encoding=slinear_le record.pause=0 record.active=0 record.block_size=1960 record.bytes=0 record.errors=0 Now test the recording from the second audio device using aucat(1) aucat -f rsnd/1 -o file.wav If the device also has a headset audio can be played through the same device. aucat -f rsnd/1 -i file.wav Screen Capture using Xvfb The rate at which a framebuffer for your video card is a feature of the hardware and software your using, and it's often very slow. x11vnc will print an estimate of the banwidth for the system your running. x11vnc ... 09/05/2012 22:23:45 fb read rate: 7 MB/sec This is about 4fps. We can do much better by using a virtual framebuffer. Here I'm setting up a new screen, setting the background color, starting cwm and an instance of xterm Xvfb :1 -screen 0 720x540x16 & DISPLAY=:1 xsetroot -solid steelblue & DISPLAY=:1 cwm & DISPLAY=:1 xterm +sb -fa Hermit -fs 14 & Much better! Now we're up around 20fps. x11vnc -display :1 & ... 11/05/2012 18:04:07 fb read rate: 168 MB/sec Make a connection to this virtual screen using raw encoding to eliminate time wasted on compression. vncviewer localhost -encodings raw A test recording with sound then looks like this ffmpeg -f sndio -i snd/1 -y -f x11grab -r 12 -s 800x600 -i :1.0 -vcodec ffv1 ~/out.avi Note: always stop the recording and playback using q, not Ctrl-C so that audio inputs are shut down properly. Screen Capture using Xephyr Xephyr is perhaps the easiest way to run X with a shadow framebuffer. This solution also avoids reading from the video card's RAM, so it's reasonably fast. Xephyr -ac -br -noreset -screen 800x600 :1 & DISPLAY=:1 xsetroot -solid steelblue & DISPLAY=:1 cwm & DISPLAY=:1 xrdb -load ~/.Xdefaults & DISPLAY=:1 xterm +sb -fa "Hermit" -fs 14 & Capture works in exactally the same way. This command tries to maintain 12fps. ffmpeg -f sndio -i snd/1 -y -f x11grab -r 12 -s 800x600 -i :1.0 -vcodec ffv1 -acodec copy ~/out.avi To capture keyboard and mouse input press Ctrl then Shift. This is very handy for using navigating a window manager in the nested X session. Arranging Windows I have sometimes found it helpful to launch applications and arrange them in a specific way. This will open up a web browser listing the current directory and position windows using xdotool DISPLAY=:1 midori "file:///pwd" & sleep 2 DISPLAY=:1 xdotool search --name "xterm" windowmove 0 0 DISPLAY=:1 xdotool search --class "midori" windowmove 400 0 DISPLAY=:1 xdotool search --class "midori" windowsize 400 576 This will position the window precisely so that it appears to be in a tmux window on the right. Audio/Video Sync If you find that the audio is way out of sync with the video, you can ajust the start using the -ss before the audio input to specify the number of seconds to delay. My final recording command line, that delays the audio by 0.5 seconds, writing 12fps ffmpeg -ss 0.5 -f sndio -i snd/1 -y -f x11grab -r 12 -s 800x600 -i :1.0 -vcodec ffv1 -acodec copy ~/out.avi Sharing a Terminal with tmux If you're trying to record a terminal session, tmux is able to share a session. In this way a recording of an X framebuffer can be taken without even using the screen. Start by creating the session. tmux -2 -S /tmp/tmux0 Then on the remote side connect on the same socket tmux -2 -S /tmp/tmux0 attach Taking Screenshots Grabbing a screenshots on Xvfb server is easily accomplished with ImageMagick's import command DISPLAY=:1 import -window root screenshot.png Audio Processing and Video Transcoding The first step is to ensure that the clip begins and ends where you'd like it to. The following will make a copy of the recording starting at time 00:00 and ending at 09:45 ffmpeg -i interactive-sql.avi -vcodec copy -acodec copy -ss 00:00:00 -t 00:09:45 interactive-sql-trimmed.avi mv interactive-sql-trimmed.avi interactive-sql.avi Setting the gain correctly is very important with an analog mixer, but if you're using a USB mic there may not be a gain option; simply record using it's built-in settings and then adjust the levels afterwards using a utility such as normalize. First extact the audio as a raw PCM file and then run normalize ffmpeg -i interactive-sql.avi -c:a copy -vn audio.wav normalize audio.wav Next merge the audio back in again ffmpeg -i interactive-sql.avi -i audio.wav -map 0:0 -map 1:0 -c copy interactive-sql-normalized.avi The final step is to compress the screencast for distribution. Encoding to VP8/Vorbis is easy: ffmpeg -i interactive-sql-normalized.avi -c:v libvpx -b:v 1M -c:a libvorbis -q:a 6 interactive-sql.webm H.264/AAC is tricky. For most video players the color space needs to be set to yuv420p. The -movflags puts the index data at the beginning of the file to enable streaming/partial content requests over HTTP: ffmpeg -y -i interactive-sql-normalized.avi -c:v libx264 -preset slow -crf 14 -pix_fmt yuv420p -movflags +faststart -c:a aac -q:a 6 interactive-sql.mp4 TrueOS @ Ohio Linuxfest '17! (https://www.trueos.org/blog/trueos-ohio-linuxfest-17/) Dru Lavigne and Ken Moore are both giving presentations on Saturday the 30th. Sit in and hear about new developments for the Lumina and FreeNAS projects. Ken is offering Lumina Rising: Challenging Desktop Orthodoxy at 10:15 am in Franklin A. Hear his thoughts about the ideas propelling desktop environment development and how Lumina, especially Lumina 2, is seeking to offer a new model of desktop architecture. Elements discussed include session security, application dependencies, message handling, and operating system integration. Dru is talking about What's New in FreeNAS 11 at 2:00 pm in Franklin D. She'll be providing an overview of some of the new features added in FreeNAS 11.0, including: Alert Services Starting specific services at boot time AD Monitoring to ensure the AD service restarts if disconnected A preview of the new user interface support for S3-compatible storage and the bhyve hypervisor She's also giving a sneak peek of FreeNAS 11.1, which has some neat features: A complete rewrite of the Jails/Plugins system as FreeNAS moves from warden to iocage Writing new plugins with just a few lines of code A brand new asynchronous middleware API Who's going? Attending this year are: Dru Lavigne (dlavigne): Dru leads the technical documentation team at iX, and contributes heavily to open source documentation projects like FreeBSD, FreeNAS, and TrueOS. Ken Moore (beanpole134): Ken is the lead developer of Lumina and a core contributor to TrueOS. He also works on a number of other Qt5 projects for iXsystems. J.T. Pennington (q5sys): Some of you may be familiar with his work on BSDNow, but J.T. also contributes to the TrueOS, Lumina, and SysAdm projects, helping out with development and general bug squashing. *** Beastie Bits Lumina Development Preview: Theme Engine (https://www.trueos.org/blog/lumina-development-preview-theme-engine/) It's happening! Official retro Thinkpad lappy spotted in the wild (https://www.theregister.co.uk/2017/09/04/retro_thinkpad_spotted_in_the_wild/) LLVM libFuzzer and SafeStack ported to NetBSD (https://blog.netbsd.org/tnf/entry/llvm_libfuzzer_and_safestack_ported) Remaining 2017 FreeBSD Events (https://www.freebsdfoundation.org/news-and-events/event-calendar/2017-openzfs-developer-summit/) *** Feedback/Questions Andrew - BSD Teaching Material (http://dpaste.com/0YTT0VP) Seth - Switching to Tarsnap after Crashplan becomes no more (http://dpaste.com/1SK92ZX#wrap) Thomas - Native encryption in ZFS (http://dpaste.com/02KD5FX#wrap) Coding Cowboy - Coding Cowboy - Passwords and clipboards (http://dpaste.com/31K0E40#wrap) ***

The Laravel Podcast
Interview: Neo Ighodaro, co-founder of Laravel Nigeria and CTO at hotels.ng

The Laravel Podcast

Play Episode Listen Later Sep 23, 2017 64:16


An interview with Neo Ighodaro, co-founder of Laravel Nigeria and CTO of hotels.ng Notes: Neo's Earliest drawings Laravel Nigeria Hotels.ng Building the Laravel Nigeria Community With Over 200 People Attending the First Meetup Neo speaking at Laravel Nigeria - Deploying Your Laravel Application Lagos CreativityKills Greymatter Mark Essien, founder of Hotels.ng FlashDP Kohana framework Prosper Otemuyiwa ForLoop Neo in a black hoodie Transcription sponsored by Laravel News Matt Stauffer: Welcome back to Laravel Podcast, season three. This is the second interview, episode three, where we're going to be talking to Neo Ighodaro, big man around town in Laravel Nigeria. Stay tuned. All right. Welcome back to Laravel Podcast! I've got to figure out how to number these things because technically, this is episode three because the first one was a preview, but that confused a lot of people, so welcome back to the second interview of season three of the Laravel Podcast. I have my actually relatively recent friend with me. His name's Neo, and I've been pronouncing it Ighodaro the whole time. Is that actually how to say it? How do you say your name? Say it, not me saying it. Neo Ighodaro: Yeah, you're actually saying it correctly. Matt Stauffer: Could you say it, though? I want to hear you say it. Neo Ighodaro: Okay. Natively, the "g" is silent, so it's more like I-ho-da-ro, but a lot of people call it Ighodaro and I kind of feel more comfortable with Ighodaro because it sounds better, in my opinion. Matt Stauffer: So, if I tried to say it without the "g," you'd actually prefer I say it the way I just said it? Neo Ighodaro: With the "g." Matt Stauffer: Okay. I have some friends.. one of my friends whose name is Al-bear-to ... I don't even know the Spanish pronunciation. Neo Ighodaro: Alberto. Matt Stauffer: I would try to learn how to say it, right? "Al-bear-to." He's like no, no, no. Just call me Alberto (pronounced like an American) and I was like, "But that's not your name," and we had kind of this big back and forth and what he ended up saying was, "When an English-speaking person says it in an English sentence, I prefer it to be the English pronunciation, and then when a Spanish-speaking person says it in a Spanish sentence, I prefer it to be the Spanish pronunciation." I've never heard anybody say that before, because I'm always like, "I don't care. I want to pronounce your name the right way," but for me, more important than the right way is what you want, so I'm here. I'm with you. Neo Ighodaro. It's fantastic to have you on. If anybody hasn't heard about Neo before, the way that he has most primarily been known in the Laravel world is because he is one of the three organizers. I don't know ... who's the founder? Are all three of you the founders, what are you the founder and now three of the organizers? How does that work? Neo Ighodaro: I and Prosper basically are the founders, so we just got together and started it. We decided to get people on board, so Lynda was the third person. Now, we have a couple of other people who are silent organizers, but they help out every single time we have a Meetup. Matt Stauffer: Okay, and by the way, I didn't actually finish my sentence before I asked you one because I interrupt myself. The "it" that Neo and I are talking about is Laravel Nigeria, which is this kind of Meetup, but it's kind of a conference, because it's as big as all the other Laravel conferences, even though they're calling it a "Meetup," but people are traveling from five hours away. It's a really big deal, so we'll talk about that maybe a little bit later. But what I told Neo beforehand was, "This is not actually about that Meetup. This is not actually about you being the CTO of a big tech company. What this really is about is knowing you as a person and what you're about," and if anybody listened to the Taylor interview I did before, we didn't talk so much about Laravel. We talked for a little bit about just kind of Taylor and where he comes from, so maybe we'll down the road there, but the tiniest little bit of context, he's one of the two founders. He's one of the three formal organizers, and there's also some silent organizers of Laravel Nigeria. If you haven't looked it up, I'll put a link to a write-up that he did in the show notes, but you're just seeing hundreds and hundreds and hundreds of people once every couple months come together and teach and learn. There's actually a couple of your talks that are online, so I'll make sure to link a couple of those that I think Pusher's hosting. You can hear him speak. You can see what he's organizing. He's the CTO of Hotels.ng, which is a really big tech company out of Nigeria and y'all are in Lagos, right? Ah, pronunciation. Neo Ighodaro: We're in Lagos. Matt Stauffer: More of them. I've been saying "lay-goes" like "go," but then last night, I looked it up and they said "lay-guhs," not "goes", so is that another one? Neo Ighodaro: Exactly. Matt Stauffer: Oh, I'm murdering these things. Neo Ighodaro: Lay-gas, yeah. Matt Stauffer: I also, several times when we were first talking, I would refer to Lagos as if it were only a city, not knowing it was both a city and a state, so it's kind of like a New York, New York thing, right? Like New York is both a city and state, Lagos is also a city and a state. Now I know these things. Neo Ighodaro: Yes. Matt Stauffer: The tiniest bit of context, and I want you to teach me a little more, because basically over the last week, I've been Wikipedia-ing all these things, is that Nigeria's the biggest economy in Africa and then Lagos is the most significant economy in Nigeria. Then Lagos city is such a significant economy that it would have been one of the biggest economies in Africa just as a city alone, and it is the twentieth largest economy of any city in the entire world. This is a significant thing because I think a lot of folks, they understand some general names, some general locations, some general cultural concepts of various African cities and states and countries, but I don't know if they have that much context, understanding that this is a huge place. Are you actually in the city, or are you in a different city in the state? Neo Ighodaro: It's kind of hard to explain, but- Matt Stauffer: I figured. Neo Ighodaro: Lagos, as a whole, like you said, is a city and a state. It's a city and a state because it's quite small geographically. It's really small, so you can't really call it a state and it's so small that you can't not call it a city, I mean, and it's so small in the sense that you want to call it a state because officially, it is a state, but I mean, it's just so small for you to call it any other thing. Matt Stauffer: Now, is it like Singapore, where if you're in the state, you're also in the city? Neo Ighodaro: Yeah. Pretty much. Matt Stauffer: I assumed that there were other cities within the state? Neo Ighodaro: No. Matt Stauffer: So, if you're in Lagos the state, you're basically in the city? Neo Ighodaro: They're just ... we like to call them local governments. Matt Stauffer: Got it. Neo Ighodaro: They are like small, small, very tiny, little regions that you can probably drive like one hour across each region, so it's kind of like a big- Matt Stauffer: But all those regions are within the city? Neo Ighodaro: Yeah. Matt Stauffer: Wow. Neo Ighodaro: Within the city slash state. Matt Stauffer: Okay, so it is a little bit like Singapore in that way. When I think of big cities, I spent a couple years living in Chicago, so I think about Chicago as being a very large city, so Chicago has three million people. It has, I think, I'm trying to remember how many square ... 230 square miles and so Lagos has 16 million people and it has, I think 400 and something square miles, so we're talking many, many, many times the size of Chicago. Also, it's a city, it's a state, and it's all these kind of things, so I think just getting that kind of out of the way and understanding those things helped me a little bit of the context of why when I was like, "Oh, yeah. You're in Lagos," you're like, "Yeah, but" ... We've got to talk a little bit more than that. -So, you are in Nigeria. You are the CTO of Hotels.ng. You are doing all this kind of stuff, so let's actually get to the meat of it. First question: When did you first have access to a computer and where was it, and for what reason? Neo Ighodaro: I would say when I was about 13. Back in the day before internet was quite popular in Nigeria, it was really, really difficult to get your hands on a computer, so I think one of those cybercafes. They're not really cafes in the sense of it. It's just basically a shop where you have a bunch of computers and then you pay some amount of money to get access to those computers to use their internet. I think one of those days, I was about 13, and I got some extra money and I just went to the internet. It was mostly to chat, though. Matt Stauffer: What was the chat protocol that y'all used back then? Neo Ighodaro: I think Yahoo Messenger was very popular then and MSN- Matt Stauffer: I remember that. Neo Ighodaro: Or one of those ones. I was always on them. Matt Stauffer: Did they have computers in your schools at that point, or not until later? Neo Ighodaro: It's kind of tricky because we did have computers in the school, but it was not computers for everyone. It's privileged access at the computer. Matt Stauffer: Really? Neo Ighodaro: Yeah. It was horrible. Matt Stauffer: I told you beforehand that you get to tell me when I'm digging too far, but- Neo Ighodaro: No, it's fine. Matt Stauffer: What privilege gives you access? Is it a particular type of study or something else? What privileges someone to get to use the computer? Neo Ighodaro: Back then, the first thing is ... we had this computer science subject, basically, where we had to learn about computers, but they usually just write it on the board and like, "Okay, this is a CPU. This is a disk." Was it disk? Did we call it disk back then? What's the name of that thing, the square thing where you save stuff? Matt Stauffer: The hard-drive? Neo Ighodaro: No, no. The one back in the day, so you have this thing- Matt Stauffer: Oh, you mean a floppy disk? Neo Ighodaro: Yeah. Floppy disk, so they'll tell you, "This is the floppy disk," and we never saw any of them. We just had pictures and then- Matt Stauffer: Wow. Neo Ighodaro: Once in a while, maybe once in an entire term, they'd be like, "Let's go to the computer room," and then we go and we see them. We don't touch them. Matt Stauffer: Wow. Neo Ighodaro: You're actually forbidden to touch them. Matt Stauffer: Wow. Neo Ighodaro: You see them and they're like, "Oh, that's the CPU they were talking about. Oh, it looks so cool," but looking from five meters away like, "Yo. Don't touch it." Matt Stauffer: Now, why was it that you couldn't touch it? Was it because there were so few that they were precious, or was there something else going on? Neo Ighodaro: Yeah, yeah. Pretty much. It was more like a new thing back then, so they were pretty expensive. Matt Stauffer: Got it. Neo Ighodaro: And they didn't really trust kids back then, so- Matt Stauffer: Understandably. Neo Ighodaro: If you became a prefect, for instance, we have this thing where certain students, depending on your academic abilities or your leadership skills, you become a prefect, so to speak, and then you'll be able to have access to certain things that other students didn't have. Matt Stauffer: Got it. Neo Ighodaro: As a prefect, I was able to have some access, limited access. Matt Stauffer: But it was still very limited, so it was really the cybercafe that gave you the space to do what you wanted to do. You started out chatting. When did you transition from chatting to thinking that you were going to be able to create something? Neo Ighodaro: I was 15. I remember very clearly the day. It's actually a kind of funny story. I was subject to some bad people in school and I wasn't really keen on going to school at that point because they were always bullying because I was very little in school. They were always bullying and at some point, I was like, "You know what? Screw this, man. I can't deal," and then I started going to cybercafes. Instead of going to classes, I'd just go to cybercafes. I mean, I'm not happy about it, but it was sort of- Matt Stauffer: It's what it is. It's your story, so ... Neo Ighodaro: One of those days, I decided to check out an internet café and that was it. I just liked going there. I felt safe there. I could literally just bury myself in whatever I was doing and not worry about anything else. Matt Stauffer: That's really cool, so you spent more and more time there, even skipping class to go there. You were chatting originally, but what was the moment or was there a project, or what kind of piqued your interest in creating something on the web? Neo Ighodaro: I don't really remember the thought process, but I remember thinking at some point ... I saw this one guy. He went to the café to, I don't know what he was doing there, but I saw him typing some random stuff and I was just like, "What is this guy doing? It doesn't seem like English." It just looked random. I walked up to him and I was like, "Hey, dude. Sorry, but what are you doing?" and he was like he's learning how to program. That was the moment I just thought, "Okay, program. What exactly is a program?" I'm not sure if Google was a thing then, but I know I was using Yahoo Search a lot, so I tried to Google and I stumbled upon the word HTML. One thing led to another and I started thinking, "Hey, how is yahoo.com actually made?" Matt Stauffer: Right. Neo Ighodaro: I started digging and I find out, "Oh, okay. You need something called HTML." I had no idea what it was, and I was like, "I could probably learn that instead of chatting and wasting my time"- Matt Stauffer: Right. Neo Ighodaro:"I could probably learn how to make HTML." That was pretty much the thought process and one thing led to another. I just kept on going and finding out more about HTML. I literally did not know the meaning. I didn't actually care. I just wanted to learn the thing. Matt Stauffer: That's fascinating, so you learned enough that I'm sure you were making your own little local HTML things. Do you remember what the first page you made was about? Neo Ighodaro: Oh, it was a personal page, obviously. Matt Stauffer: Right. Neo Ighodaro: A site called uni.cc or something like that. It was one of these Geocities type of thing- Matt Stauffer: Sure. Neo Ighodaro: Where you just go and then they give you a sub-domain and a name and then you just kind of mash up the HTML in there. I created one of those and I remember there was this guy. I've forgotten his name, but he was a really big influence back then. There was the time of Greymatter. I don't know if you've heard of it? Matt Stauffer: I haven't. Neo Ighodaro: It was a blogging platform. It was close to what we have in WordPress, but it was called Greymatter. I think his name is Tony. He used to create all these blogs and then there were a lot of young people and they had a lot of blogs that they created. They create these blogs and then they just write random stuff in it, but I was more interested in how the blogs looked. They looked so beautiful and I was like, "Why does mine just look like a bunch of marquee running around the screen?" Matt Stauffer: Right. Neo Ighodaro: I was forced to learn design, so I had to start digging in. I heard about Photoshop, so I picked it up. Matt Stauffer: I love that you got there because when we first met, I went over to CreativityKills. Would I be right to describe CreativityKills as essentially your freelance web development kind of company? And I don't even know freelance, but your web development consultancy that was your main thing before you started working at Hotels.ng, and you still kind of keep it running on the side? Is that a good description for it? Neo Ighodaro: Yeah, pretty much. Matt Stauffer: What I noticed there ... I went to portfolio, and the moment I see ... I think it was portfolio or work or something, but what I saw instead of code or descriptions, was I saw screenshots. The moment I see that, I say, "This person's probably a designer," and the design was good too, so you're not just a programmer. Tell me how do you think of yourself? Do you think of yourself as a designer and a programmer? Have you trained in one more than the other, or do you think of yourself as a hack in one and really good at the other? How do you kind of approach your skillset? Neo Ighodaro: I think to really answer the question, I have to go a little back to the origins. Like I said, I learned about you have to design your sites for it to look good. I was like, "How do I get there?" and I heard of Photoshop. I started going to the cybercafes. Instead of learning how to write HTML, I was learning how to design, so it was a hassle, to be honest. It was really difficult because you had 30 minutes to learn, literally 30 minutes to learn everything you wanted. I basically started learning and a couple of people just noticed that I come regularly and some people just randomly gave me some extra time. Matt Stauffer: Oh, cool. Neo Ighodaro: I was able to pick up a couple of designs. I actually have a link to one my first ever designs. I still have- Matt Stauffer: That's going in the show notes. That is going in the show notes. Neo Ighodaro: Yeah. It took me about 12 hours chopped into 30 minutes- Matt Stauffer: I was going to say, 30-minute increments of 12 hours, and it's not as if you could take it home. I mean, once the 30 minutes is up- Neo Ighodaro: You're done. Matt Stauffer: Did you have a thumb drive that you were saving everything on, or how did that work? Neo Ighodaro: I had a floppy disk, so every time I go, I was like, "Does this computer support floppy disk?" If they were like, "No," I was like, "No. I'm not doing this." I actively looked for a computer with a floppy disk and I had to download Photoshop- Matt Stauffer: Every time. Neo Ighodaro: Every single time. Matt Stauffer: Oh my gosh. Neo Ighodaro: Exactly. Matt Stauffer: Oh my gosh. Neo Ighodaro: It was hectic. Matt Stauffer: That's incredible. Neo Ighodaro: Pretty much. Matt Stauffer: You taught yourself how to design, so both in terms of design and HTML, I'm assuming that ... because I know that when I started, there weren't a lot of books around teaching this. Were you learning it purely online and, if so, do you remember any of the sites you used to learn? Neo Ighodaro: I remember the site I used to learn how to make my first-ever graphic, but I don't think I really learned any of the other ones, I mean, the tool sets and everything, using any site online. I was basically just "mash, mash, mash." It's "mash, mash," and it worked, I'm like, "Oh." Matt Stauffer: View source, copy, paste, modify. Neo Ighodaro: Exactly. Something like that, so I was just editing. I would just pick a tool and drag it across the screen. I was like, "Try to figure out what does this do." But the first night I learned about actually making vector images was vexiles.net. I don't know if they're still around right now, but it taught me how to take a picture and turn it into a kind of vecto graphic. Matt Stauffer: Trace it with the ... what are those things called? The pen tool and everything like that? Neo Ighodaro: Exactly. Matt Stauffer: Very cool. I think that's pretty similar to how I learned. I remember I got my first book when I was five or 10 years into it and it was such a foreign process because I was like, "Wait. I have to sit down and read 50 pages and then" ... It just didn't translate. I was like, "No. You just kind of figure it out as you go." You started programming when you were 15. I'm guessing the design was a little bit later than that. At which point did you realize this was not just something that was just a fun thing to do with your time, but it was something you were actually going to consider turning into a career? Neo Ighodaro: I think I was about 17 or 18. That was when I actually creating the skills unofficially. I had a couple of friends back then and they had these really nice names for their website. There was Aether Reality.net. They just had really, really random names and I was like, "I could come up with one," and I don't know. I can't remember exactly how, but I was thinking in the lines of, "What if you had a company that portrayed designs to die for?" I sort of just circulated around that concept until I got to the point CreativityKills. I can't remember how it clicked or when I clicked, but I just know at some point, I was like, "Creativity kills." It kind of had a negative connotation, especially culturally, but I felt like people needed to ask questions like, "Well, how does creativity kill?" It kind of was the one thing that I knew could make my brand stand out, because people became curious. Matt Stauffer: I love that. It doesn't give you all the answers just from reading it. It makes you ask questions and that's something you wanted. I mean, that clearly lines up with the story you're telling me is you literally walked over to somebody else in the café and said, "What is that jumble you're typing into your screen right now?" That's really fascinating. Did you have any people around you or any role models where you said, "Oh, I'm going to do this like that other person I know or that other person I've seen," or was it more of a just kind of, "Hey, this is a thing I can try out and see what happens"? Neo Ighodaro: For design, yes. The Tony guy, I really can't remember his name. I wonder why. Matt Stauffer: Right. Neo Ighodaro: But anyways, the Tony guy, I think I still have him on Facebook or something. He didn't know it, to be honest. I was just more of an admirer from afar type of person and I really liked how he designed and everything, so he was sort of my role model in design. But when it came to HTML and PHP and the other program language, I didn't really have anybody. It was just me. Just me and nobody else. Matt Stauffer: At some point, you went from, "What is this computer and internet thing?" to "What is this coding thing?" to "What is this design thing?" to "I know these things well enough that I could make things" to "I know these things well enough that I could convince someone else to pay me money to do it." Those are a lot of shifts to happen over the span of, I think, two years basically. There's not a lot of other people around you who are doing kind of development consultancies and design consultancies and stuff like that, so how did you figure it out? What were your early challenges? Who were your early clients? What did it look like for you to create CreativityKills and turn it into actually making income? Neo Ighodaro: I had to figure out every single thing myself. I didn't know anything about marketing. They didn't even cross my mind, to be honest. When I started, I created a website for it. I don't have the template anymore, but I was proud of it then. I'm not sure I would be now. Matt Stauffer: Right, right. Neo Ighodaro: I had this lady. She wanted to create a website for her NGO and she met me. She heard of me from my friend, so my friend told her, "Oh, I have this guy. He's probably be cheap and he does websites." Matt Stauffer: Right. Neo Ighodaro: She was like, "Okay. Let me meet him," and I talked to her. She told me, "This is what I want. This is what I want," and I was like, "Okay, cool." Back then, I only knew HTML to be honest. I didn't know PHP and so I was like, "How do I swing this?" I then went to a cybercafe again and I started Googling, no, I was Yahooing, basically- Matt Stauffer: Right. Neo Ighodaro: Because I don't think I was using Google then. I was trying to figure out, "How do I make a website as dynamic?" and I think that's where I stumbled upon PHP. Somebody was talking about PHP and CGI scripts and all the stuff and I was like, "This seems like something to go into." Then I had about two months, so I gave a deadline of two months to deliver the project, so I had roughly about a month to learn PHP. PHP just jumped at me. I was like, "Let me just go with this one." I heard of ESB. I heard of a lot of ones, but PHP just seemed welcoming. I mean, that's the allure of the language, anyways. I was like, "I'm going to do this," and I jumped on it. The learning process was difficult. I didn't pick it up in one month. I actually just knew a bit, a few things, because of 30 minutes increments, 30 minute, 30 minute. At some point, I stumbled upon Greymatter and WordPress and then I was like, "Okay, so this kind of makes you build a website easily. I could do this. I mean, it doesn't look so complicated." I had to figure out how to host websites, so I hosted her website. I paid for the domains and everything and then in about two months, I came and said, "Hey, look at your website," and she paid me. I was so happy, like, "This is my first income. I did it alone." It was a happy moment for me, but from then on, I started feeling like, "What if I could take that one client and kind of expand my reach, try to reach other people?" I mean, one person old one person, so obviously, there's some sort of system to it. I started digging about SEO and I started digging into marketing and that's pretty much ... one thing led to another, and most of the things I learned, I had to learn because when you work to a certain degree, you hit a bump. Then you're like, "What to do next?" and then you get introduced to certain concepts, and then you learn about that. Then you hit another bump, and, then, "What do I do next?" That was pretty much my learning phase. I just kept on hitting bumps. Initially, it was the HTML. Then I was like, "The HTML has to look nice," so I had to go to CSS. "Now the visual aspects have to look nice," so I went to Photoshop, then I went back to HTML. I realized that you can't really do much with HTML. You need some dynamics. I went to JavaScript and it was really, really difficult, so I left it. I heard of PHP. I went to PHP and I realized I have to go back to JavaScript. I went back to JavaScript and then to Jaggery. It was just- Matt Stauffer: Right. Neo Ighodaro: One thing leading to the other. Matt Stauffer: Yeah. You do what you can until you hit a pain point and then you figure out the simplest possible thing to fix that pain point and then move on to the next pain point. Neo Ighodaro: Exactly. Matt Stauffer: Very cool. You were writing procedural PHP back then. This is pretty early. I'm guessing it was right past when WordPress was created. You got WordPress. You got into Greymatter. Did you spend just a couple years there, basically building HTML and CSS websites with some Photoshop design and some WordPress and some Greymatter? Is that kind of your bread and butter for a while before you made shifts over to things like Laravel? I mean, Laravel, obviously came out much later than that, but did you kind of sit in that space, or were there other kind of steps in your journey between then and Laravel? Neo Ighodaro: No. I sat there for a while. I really didn't think of structure or anything. I was there for a long time, probably a year or three years, between that range. I remember the first time I got introduced to CodeIgniter. I learned about CodeIgniter and I didn't really understand what MVC was. In my mind, I just wanted to write spaghetti code and be done with it, but I started seeing the benefits I made of separating concerns and I felt like it could help eventually. I mean, all those things I've created, plus it's a framework. It gives you a jumpstart and that was really what sold me. I didn't have to write my skill connect to this or my skill connect to that, I just put my details and I'm done. I got into CodeIgniter. After a while, I started ... my learning of PHP started evolving from spaghetti code to "How do we structure an application?" Then I started, and this is very interesting, actually. Because I didn't have a laptop or a PC. Laptops were a stretch. I didn't have a PC then. I had to do this thing. I decided to write a framework of my own, but I had just 30 minutes in a cybercafe, roughly. Matt Stauffer: Is this still a floppy disk that you're using, or is this what you're about to tell me? Neo Ighodaro: Yeah, yeah. A floppy disk, so what I did was I bought a diary and I literally wrote my code in ink- Matt Stauffer: No. Neo Ighodaro: On the diary. Matt Stauffer: No. Now why couldn't you just save it as HTML files and PHP files down in your floppy disk? Neo Ighodaro: Let me explain. I had a couple of minutes, where if I'm going to ... let's just say, maximum, an hour and thirty minutes at the cybercafe- Matt Stauffer: Right. Neo Ighodaro: That's when I have access, but I don't want to go there and start thinking of what to do. Matt Stauffer: Oh. Neo Ighodaro: Exactly, so my solution to- Matt Stauffer: You're writing in the diary when you're not at the cybercafe as your brain is roiling over. Oh my goodness. Neo Ighodaro: Exactly. Matt Stauffer: That's amazing. I mean, I've done architectural diagrams in a journal and I've done the tiniest little bit of code, but writing a framework that way? No way. So, you basically show up, and the first thing you'd do is basically transcribe all your diary notes down into code and then see- Neo Ighodaro: Exactly. Matt Stauffer:"Hey, did it work?" Wow. Neo Ighodaro:"Did it work?" "No." "Oh, bugs, bugs, bugs. Fix, fix, fix, fix, fix. Oh drat. I forgot this." Matt Stauffer: Wow. Fascinating. Neo Ighodaro:"Yeah. I got to go home. Just log out. Go back home." Matt Stauffer: Right. Neo Ighodaro: And write, write, write, write, write, write. Matt Stauffer: And write more in your diary. Neo Ighodaro: There was this thing. Nigeria's a very cultural state and then there was this day my mom stumbled upon the diary. She thought I was writing a lot of demonic stuff. She was like, "Oh my God." Matt Stauffer: Oh, no. Neo Ighodaro:"What is all this?" She literally thought I was possessed. Matt Stauffer: It's funny because I was going to ask about your family, so this is perfect. What did your family think about this whole thing? You're skipping class. I mean, I don't know if they knew you were skipping class, but you're doing these computer things. You're in the cybercafes all the time. Was that something that you got a lot of support for, you got a lot of criticism for, or were they kind of ambivalent, they weren't sure how to feel? Neo Ighodaro: A lot of criticism. An African family is a family that places a lot of value on education, so me skipping school then was horrible. I was literally the black sheep of the family just instantly. The day they find out, they were so disappointed. "How could you do this? Blah blah blah," and I was just staring, like, "Sorry." Then they were like, "We're really, really disappointed," and everything. Then the day they saw the writings on the book was my mom, she freaked out. She thought I was on some demonic tick and she was like she's going to call an entire family meeting, so the entire family gathered and they were like, "What is this you're writing?" Matt Stauffer: Oh, no. Neo Ighodaro: And I was not good enough to explain it, so I was just like, "It's code." "It's code for what?" And I was like- Matt Stauffer: Right, right. Yeah. Code as if ... "It makes computers work." Neo Ighodaro: Yeah, so I couldn't really explain it and they were like, "We don't want to ever see you doing this again," and I was like- Matt Stauffer: Oh my gosh. Neo Ighodaro:"Yeah, sure. Right." But I knew, deep down, I wasn't going to stop. Matt Stauffer: How long did it take for you- Neo Ighodaro: I think that was one of the few things that- Matt Stauffer: Oh no. Go ahead, go ahead. Neo Ighodaro: Really made me continue to really fight for it, just because I felt like it made me a rebel. Matt Stauffer: I love it. How long do you think it took before they really kind of understood, or do they now? Neo Ighodaro: Yeah, they do. It took a long time, until I was in the university, actually, and they started seeing some dividends like it was paying off. They were like, "Okay. This dude hasn't called us to ask for pocket money or anything, actually." Matt Stauffer: Right, right. Neo Ighodaro: They were like, "He probably is doing something right," and then they were like, "Okay, so what is this thing exactly?" Matt Stauffer: Got it. Neo Ighodaro: They were willing to come to the table and ask me questions like, "What does it do? How does it work?" Matt Stauffer: Very cool. Neo Ighodaro: Then there's this thing in Nigeria, so there are internet fraud stars a lot. They scam people of money and blah blah blah, but the idea is back in the day, when they see you, any young person in front of a computer, that is the instant thing they think, that you're a fraudulent person, that you're being ... they called it a "yahoo yahoo boy." Matt Stauffer: They call it ... can you say it again? It didn't come through on Skype. Neo Ighodaro: Yahoo yahoo. Like "yahoo" twice. Matt Stauffer: Got it. Neo Ighodaro: So they call you a yahoo yahoo boy. They were really concerned that that's what I was doing. Matt Stauffer: Got it. Neo Ighodaro: They really wanted to know because it was illegal and they didn't want any of the stuff and I was like, "No. I promise it's not actually that. It's literally the opposite," and they sort of just went with it. I don't think they really believed. Matt Stauffer: Right. Neo Ighodaro: They just had faith, so I guess they started to come around from there. Matt Stauffer: That's fascinating and that transitions to the university. At some point, you were doing CodeIgniter, and I assume that was before university. At what point did you decide to go to university, or was this all happening at the same time? Neo Ighodaro: Pretty much at the same time. After they found out that I'd been skipping school, I had to change schools, so I had to go to another one somewhere closer that it could monitor my movements and- Matt Stauffer: Got it. Neo Ighodaro: It didn't really stop me, actually. I did what I wanted to do anyways. The good part was I was sort of book smart to a point- Matt Stauffer: Right. Neo Ighodaro: I was able to ace my exams and everything. Matt Stauffer: Right. Neo Ighodaro: That was the good part, so I didn't really need to go to school, because I knew if they found out that I didn't do a couple of tests, they would probably come and check the attendance sheet and everything. Matt Stauffer: Right. Neo Ighodaro: I made sure I aced most of my tests, most of my exams, but on the low-low, I was still trying to figure out what this entire programming thing was about. Matt Stauffer: All right, so you went off to ... what did you actually study in university? Was it programming, or was it engineering? What was the actual formal title of it? Neo Ighodaro: Mathematics and economics. Matt Stauffer: Is that something you use in your daily life right now? Neo Ighodaro: Nope. Nope. Matt Stauffer: All right. Well- Neo Ighodaro: Very big no. Matt Stauffer: Well, yeah. I mean, I studied in English education when I was in school. I mean, technically, I don't use it, although the experiences I had there still inform me today. All right, so you went to university. You graduated from university. You got that degree. At what point did you transition from being Neo of CreativityKills who does kind of freelance contracting stuff to Neo who is, I mean, you're doing stuff out in the community. We'll talk about that in a bit. You're working at Hotels.ng. Now, I did see you had a blog post, I think it was in maybe 2016, so was this a pretty recent transition for you? Neo Ighodaro: Yeah. Pretty much. Matt Stauffer: What was that like? Neo Ighodaro: Let me step back a little. I'll tell you another interesting story. Ever before I owned my first laptop, how I got it was there was this guy, Kolade, he had a friend who wanted a programmer on one of their projects and then it was like, "Neo, you need to get on this," and I was like, "You know I don't have a laptop." He was like, "Okay, you know what? I'll tell them. They'll get you a laptop and then we can go from there." I was like, "How do I pay for it?" They were like, "No, don't worry." I was like, "Okay, cool." Matt Stauffer: Right. Neo Ighodaro: I was so excited, but I just wanted to play it cool. Be cool, be cool, be cool. Then they brought the laptop and it was ugly. I appreciate it. Matt Stauffer: Right, right, right. Neo Ighodaro: I mean, I still have it. Matt Stauffer: It's a laptop. Nice. Neo Ighodaro: I appreciate it, but it was horrible, meaning if you unplugged the laptop, it would go off. Matt Stauffer: Right. Neo Ighodaro: The battery was finished. It was literally horrible. Matt Stauffer: It was like a big gray box kind of thing? Neo Ighodaro: Yeah, and the problem with that was the situation of power in the country. You could literally go for an entire 24 hours without power at all. The internet was so expensive, but, I mean, somehow, I was able to manage. I had to go to school a couple of times. There's this hub where you could plug your stuff in. Matt Stauffer: Got it. Neo Ighodaro: I'd go there and plug. I remember some of those people always laughing at the laptop, like, "What is that?" Matt Stauffer: Right. Neo Ighodaro: I was like, "Just ignore them. Just ignore them and do what you need to do." Fast forwarding, I had a sort of big break, right? It was during the period where BlackBerry was very popular in Nigeria, so I created this website with PHP. I think that's actually the first product I've ever created for myself. Matt Stauffer: Right. Neo Ighodaro: It was called FlashDp. What it did was it used ImageMagick to create a GIF and then you were able to use that GIF as a display picture on your BBM, BlackBerry Messenger. I did it because ... back in the day, because I wasn't too rich. Let me rephrase that. I was poor, so I had to find a way to make money at least. Matt Stauffer: Right. Neo Ighodaro: I found out people really like these GIFs and I used to create them on Photoshop a lot and then I thought about it, like, "There has to be a way to do this in PHP or some language." I was like, "Let me try." I sat down that day and I used Kohana. I don't know if you know it? Matt Stauffer: Yeah, yeah. Neo Ighodaro: Kohana framework? So, I used it and I came up with FlashDp and I gave a friend ... I was hosting it on Pagoda Box, so I gave a friend, like, "Hey, help me try this stuff. See if it works," and I went to bed. The next morning, the server had crashed. Matt Stauffer: Oh my gosh. Neo Ighodaro: I was like, "What is happening? What happened?" Then I went to analytics and I check. "Wow. A lot of people used it," and because it was very resource-intensive, I mean, it was ImageMagick trying to- Matt Stauffer: Right. Neo Ighodaro: Generate images over and over again, so I was like, "Let me try and reboot the server." I didn't really know about servers then, but it was a click and reboot thing. I decided to create another version two. I decided, "Let me just give everybody, make people use it." Right? Matt Stauffer: Right. Neo Ighodaro: I mean, it doesn't hurt. Then I gave people and I just put AdSense on it, and that was literally one of the best decisions I've made ever, because in the space of ... so I created it 2013 and in the space of about a year or two, I made about $37,000. Matt Stauffer: What? What? Just from AdSense? Neo Ighodaro: Yeah. And in Nigeria, that's huge. Yes. In Nigeria, that's huge. That was huge money, so I was able to get my first MacBook. I was able to get a nice Mac and literally that point was the turning point, because I had all the tools I needed. I didn't need to write in a diary anymore. Matt Stauffer: Right, right, right. Neo Ighodaro: I could practice it without need for power for a long time at least. I literally had everything I needed to actually become better and I felt so empowered. That was around the period when I was in school, so I had a lot of time to myself. Matt Stauffer: Right. Neo Ighodaro: A lot of time to learn, a lot of time to actually go back, and that's when I started redesigning CreativityKills again. I went back to the drawing board and I was like, "How do we appeal to people?" I spent about eight months creating that site and I released it. I think it was on adwords.com for an honorable mention or something like that. Matt Stauffer: Nice. Neo Ighodaro: I was really proud of myself. I came out and I did it. It was crazy for me, but creating FlashDp itself was the turning point. That was the landmark in everything. Matt Stauffer: That's incredible. I feel like I could dig into just this part of your story for another hour. I'm trying to keep this short. I'm going to move on, but that is fascinating. You said that was 2013, so at that point, you had gone from CodeIgnitor, you had moved over to Kohana. Let's move into modern Neo. Let's move in to Laravel. Let's move into the Laravel Nigeria Meetup. Let's move into Hotels.ng. When did you transition from Kohana to Laravel and what made you make that transition? Neo Ighodaro: FlashDp made me make the decision. It was around this period where people were arguing about whether to use static methods or not, and I started feeling bad about Kohana because it had a lot of static methods. I was like, "Is there something out there that's better?" Matt Stauffer: Right. Neo Ighodaro: I mean, obviously there might be, so I started digging and I found out about I think was it FuelPHP? I think Slim. I don't know if Slim was really around then, but I know I saw a bunch of them and I heard of Laravel and I was like, "I like the name." It has a ring to it. That was literally the only reason why I jumped on it. Matt Stauffer: Wow. Wow. Neo Ighodaro: I just liked the name. It was like, "I could try this," but I think it was around version four, around that period or something like that. I was like, "How does this work? I mean, it's usually the usual MVC stuff." Matt Stauffer: Right. Neo Ighodaro: I was like, "This seems cool," and I realized that every single thing I did was easy. You want to do this? Easy. You want to do that? Matt Stauffer: It just works. Neo Ighodaro: Easy. Yeah. I was hooked. I was like, "I'm sold." It was hard for me leaving Kohana, because I had built a lot of packages back then. Matt Stauffer: Right. Neo Ighodaro: I built a Honey Pot module or Coconut. I forgot on what they called them, but it was a package for Kohana then, so I was kind of tied to the community, but I felt if it's better with Laravel, I could just try it. That was my switch. I created version two of FlashDp using Laravel 4. I just basically kept on digging into Laravel and digging and digging and digging. I also picked up Objective C during that period. Matt Stauffer: All right. Neo Ighodaro: I got an iPhone and I learned to jail break in. I learned you could create awesome stuff using a language called Objective C, so I pretty much dived into it and started learning Objective C, creating jail break tweaks, and all that stuff. Matt Stauffer: Very cool. Neo Ighodaro: Now, my transition into being Neo ... I had this thing where I said I was never going to work- Matt Stauffer: For someone else? Neo Ighodaro: For another company. Matt Stauffer: Right. Neo Ighodaro: But I realized that if I was to run any successful business, you need experience. It goes without ... you just need it. I was like, "I need to pick the right company." You just don't jump into it, right? Matt Stauffer: Yep. Neo Ighodaro: From, I think, 2015, I started scoping the Nigerian tech scene. Matt Stauffer: Right. Neo Ighodaro:"Who would I want to work for?" I was nobody. I wasn't really known. Matt Stauffer: Right. Neo Ighodaro: But I knew I was good, so I started digging and digging and I found nothing, to be honest. I found nothing that I felt I wanted to work for until I think 2016. I was still in Benin. I schooled outside Lagos, by the way. I was still in Benin and I went to a school called University of Benin. That's UNIBEN. Then I sort of heard of Hotels.ng and I didn't really think much of it. I hadn't heard much about it, so I was like, "Meh." Then I had a friend called Lynda. So, cool story, she was the friend of somebody I knew back in the day, so my friend had been telling me, "Okay, Lynda, she's really good. She's really good." I was like, "Who is this Lynda? Who is she?" I went online and I researched and I heard she was the head of product at Hotels.ng and so I just pretty much said, "Hi. Oh hey, how you doing?" Matt Stauffer: Right. Neo Ighodaro: Then we got to talking a little and then we kind of just hit it off pretty much. We were just talking and talking. Then I think I told her that I'm looking for a gig or something. I can't really remember the backstory, but I remember receiving an email. I came to Lagos because my mom had an accident. Matt Stauffer: I'm sorry. Neo Ighodaro: A very, almost mortal one. She was in a sickbed for a long time, so I was really sad. I came down to Lagos and went to see her in the hospital. It was a very bad, very depressing moment in my life, but, I mean, coming back gave me some sort of perspective on life, like, "Things don't last forever. You need to use whatever you have as quickly as you can," so I think I sent an application. I'm not really sure if I applied or not, but I remember receiving an email from Mark Essien, he's the CEO, and he was like, "Hey. I heard about you from Lynda. Can you come to the office for an interview?" My initial reaction was, "No," but I thought about it. Matt Stauffer: Even though you had sent something in to them, right? Neo Ighodaro: Yeah. Then I thought about it. I was like, "You know what? It doesn't hurt. Let me just go." Matt Stauffer: Right. Neo Ighodaro: That was literally my first interview ever. Ever. Matt Stauffer: Ever, anywhere? Neo Ighodaro: I was about 20-something then. Matt Stauffer: Wow. Neo Ighodaro: Twenty six-ish? And I was like, "Let me just go." I went and- Matt Stauffer: Right. Neo Ighodaro: I remember him sitting in the office with three devs. Lynda wasn't around. I think she was on leave then. It was like, "What are these? What are these?" and it was calling computer science terms. I really didn't know any of them and I was like- Matt Stauffer: Right. Neo Ighodaro:"If this interview's to go like this, I'll literally fail because I don't know any of these terms. Give me a laptop." Matt Stauffer: Do you say that out loud? Neo Ighodaro: Yeah, I did. Totally. I didn't know any of these terms. Matt Stauffer: Right. Neo Ighodaro:"Just give me a laptop and I will show you what I can do." Matt Stauffer: Right. Neo Ighodaro: Then he looked at me for a minute or so and then it was like, "Okay." Then he left and then sort of, I just felt like I'd already gotten the job. Then he left me with the devs and they kept on asking me different questions, like, "This, that, that," and then one of them was like, "I think I've seen your CreativityKills somewhere." I was like, "Ha, sold." Matt Stauffer: Brilliant. Neo Ighodaro: Then he was like, "Yeah. Can you show us stuff you've done?" Then I brought in my laptop and then I showed him ... I had this music site I created using Angular and PHP backed in on Laravel. I showed him, and the first thing he was like was, "Do you design your code?" Because it was so cleanly written. It was during a period where Jeffrey was always talking about, “small controller, thin controllers, this, that. Best practices, SOLID. This, that," and he literally asked me, "Do you design it? Do you sit down and format your code?" I was like, "No, not really. Maybe I have OCD or not. I don't know." But he was really impressed at the structure of the code and I was like, "Wow. He's never seen anybody designing this, like your code. You just write code. It makes no difference to the compiler, you know?" Matt Stauffer: Right. Neo Ighodaro: I was like, "I like to see my code as art. If I feel good about it, I feel happy, but I just don't want to jumble everything. He was like, "Cool." I think that was the day I got the job. I hadn't even gotten home and I got another email saying, "You're hired." He was like, "Can you start tomorrow?" and I was like, "Okay." Matt Stauffer: All right. Neo Ighodaro: It was a big leap. That's right. I literally- Matt Stauffer: You were hired as a programmer upfront, right? Neo Ighodaro: Yeah, as a programmer. I hadn't even settled with the fact that just got my first interview. I already had my first job. Matt Stauffer: Right. Neo Ighodaro: I decided to go in and what really caught me was the culture. I've always had this culture, this ideology of what I want CreativityKills to look like and I literally saw everything right there. It was there, and that was what sold me. Everybody seemed so compact. It was a very good mixture of fun and work and that was literally what made me stay. Matt Stauffer: That's very cool. And Mark's very young too, right? It's not as if you're- Neo Ighodaro: Yeah, he is. Matt Stauffer: Joining this kind of giant, pre-existing thing. It was other people with a kind of same young Nigerian "figuring this out as we go" kind of mindset. Neo Ighodaro: Exactly. Matt Stauffer: That's awesome. All right, again, I want to ask you an hour of questions about Hotels.ng, but because we're getting close on time, what I want to do is to talk about a few things real quick. First of all, we're going to talk about the Lagos tech scene, because you mentioned about how you looked around there, and it obviously exists, but I would guess that when you first started, there really wasn't much of a tech scene. I want to hear your thoughts on that. I want to hear your thoughts about the Meetup, and then the last thing, I want to hear about hoodies. Let's start with the Lagos tech scene. When you first started, you said there weren't a lot of people around you that you could look at. There weren't people who you were saying, "That is this person in my town who I want to be like. I identify with that person and I want to be like them," so do you have any thoughts? Did you watch transition happen where all of a sudden, there were other Laravel developers around you and other tech companies? Do you have anything to share with us about what that growth process looked like? Neo Ighodaro: Yeah. When I started, either there was nobody, but they were there, but social media- Matt Stauffer: Right. Neo Ighodaro: Wasn't as prevalent as it is now, so I didn't really notice or see anybody. But the first person I did notice was Prosper. I just knew he was making a lot of noise. He's very, very energetic. He can shout, so he's an energetic person, and I kind of noticed him. I was like, "Who is this guy?" He was always saying, "Community, community." What is the community? What is it, exactly? Matt Stauffer: Right. Right. Neo Ighodaro: There is no community. I'm not seeing anything. He just kept on going and I was like, "Maybe there is a community after all," and so getting to Hotels.ng kind of gave me a lot of ... because Hotels.ng is kind of a big scene when it comes to tech. We like to support tech a lot, and it kind of gave me ... it's almost like I swallowed something and now my eyes were opened, and I sort of saw that there was potential. There were a lot of people, but there was just no real leadership. People were not just organized, but the people were there. It's just like Lego blocks. They were there, but nobody could put them together. Matt Stauffer: Got it. Neo Ighodaro: That was literally how I noticed, and I realized that what Prosper was trying to do was to get people to come together. Matt Stauffer: Very cool. Neo Ighodaro: And create that actual community that he was shouting about. That was when I realized that it's possible for us to create something that would kind of unite every single hungry developer, for any developer that's been hungry for knowledge for a while, we can unite them and people could come out and give speeches. Then we did a lot of research on Meetups and conferences. From there on, it has been up, up. I've just been noticing that. People have just been waiting, literally, for someone to start, and once there was that spark, it just happened so quickly. Everybody was, "Meet up here. Meet up here. Meet up here." Right now, as I speak, they're having a G2G Summit and a bunch of others. Next week, I have about ... the entire week is literally booked up. Matt Stauffer: Wow. Neo Ighodaro: I have a talk in Android Nigeria and there are a lot of Meetups coming up everywhere. Matt Stauffer: So, this is all pretty recent? Neo Ighodaro: Yeah, yeah. I would say about three years, two years. Matt Stauffer: Because I mean, I follow you on Twitter and I see you posting stuff about a Meetup or a conference, it feels like every week, you're at a different place meeting new people. So this is all just a couple years old, then? Neo Ighodaro: Yeah, yeah. Pretty much. Matt Stauffer: Did I hear you right in saying it's not that that tech scene wasn't there, but it was very kind of individualized, like people were really kind of in their own world? A lot of people probably have a pretty similar story to yours, where people are figuring it out on their own and just recently there was ... Prosper helped. You helped, and probably other folks helped realizing there's a lot of potential if we bring all these people together in one, and all of a sudden, they're exploding. So, I'm seeing you nodding, but I asked you a question. Is that a safe way to say it? Neo Ighodaro: Yeah, yeah. That's literally how it happened. Matt Stauffer: What do you think the thing that kicked that ... could you point to a single Meetup or a single person or a single event, or were there a lot of them kind of all starting up at the same time? Neo Ighodaro: I might be wrong, but I would point at ForLoop. There's this Meetup called ForLoop. It was started by Ridwan. I think he was one of the first people that started the entire Meetup thing. I might be wrong again, but it was the one I notice- Matt Stauffer: Sure, but from your perspective. Neo Ighodaro: Yeah. It was the one I noticed first and it kind of had the ideologies that most Meetup outside the countries have, like you just get a bunch of coders to come to the table and just talk about new tech. Matt Stauffer: Right. Neo Ighodaro: That was literally my first Meetup, so I was like, "You know what? I want to speak at ForLoop." That was literally my first ever talk, so I spoke on Docker and I was like- Matt Stauffer: Cool. Neo Ighodaro:"Let's see how this goes," and it was really successful. I mean, we're having not as much numbers as we have now, because it was just starting out, but that was the first Meetup I've heard of from my own perspective, so I think that was the turning point for everything. I will literally say ForLoop. Matt Stauffer: Do you remember, when you first spoke at ForLoop, when that was and how many people there were there at that point? Neo Ighodaro: I'm not too sure about when, but I know the first one I attended, because we hosted it in my office. We used to host Meetups at the Hotels.ng. I think there were about 80, between 50 to 80 people. Matt Stauffer: Wow. Neo Ighodaro: To us, that was big numbers. We really thought we- Matt Stauffer: The Meetups in my local town don't get that many people most of the time and they've been going for years. I mean, and you've noticed people are getting excited about Laravel Nigeria. I mean, part of it is because you never heard of it at all, and then all of a sudden, you've got 400 people and you're running out of space for people to sit. The rapid success that you've seen ... you say you don't remember, but it was at your office, so it had to have been within the last year probably, right? Neo Ighodaro: Yeah, definitely. Matt Stauffer: Yeah, so this is very, very, very recently. I mean, you went from attending ForLoop the first time with 50 to 80 people. You went from speaking at ForLoop for the first time. You went to helping kind of Prosper and Lynda and others create Laravel Nigeria. For it not existing at all, to all of sudden having hundreds and hundreds of people and running out of space and we're all talking about the span of basically the last 12 months or less. This is a pretty incredible growth process and that's why people, they're saying, "Wait a minute. Where did this all come from?" And that's why I asked the question about the tech scene. It didn't come out of nowhere, but the organization that gave the space for it to be seen and to for it to be brought together seems to really happen quickly, but what it did was it touched on something that's been there for a long time. Right? Neo Ighodaro: Yeah. Matt Stauffer: It's individuals. It's an entrepreneurial spirit. It's the desire to do all these things and the motivation to do it even when you only have 30 minutes at a time, even when you've got rolling power black and stuff like that. There's something. There's a reason where a lot of people keep saying, "Whoa. Keep your eye on Nigeria," so that's ... I mean, again, I could talk a whole hour about that, but I'm trying to keep everything short here. All right, so we talked about the Lagos tech scene a little bit. We talked about the Meetup a little bit. I do want to hear you give a pitch, where if somebody has never heard of Laravel Nigeria, give me a pitch about what it is and I asked you a lot of questions when we first talked about well, where people are coming from and what are your timelines and what are your goals, and all this kind of stuff. So, tell me a little bit about the Meetup. Tell me a little about where it is right now. When's the next one going to be? What are the things you're excited about? What are the things you're nervous about? What are the difficult and exciting parts about doing it? Neo Ighodaro: I remember when I thought of Laravel Nigeria initially, it was around December 2016, and I talked to Prosper. That was one of our first few conversations, and I was like, "What would it be like if we had Laravel in Nigeria?" I initially called it, I can't remember the name, but I called it something different. It was like, "You know what? That seems like a good idea. Why don't we do it?" I had zero knowledge on Meetups, like zero. I literally didn't know where to start, and they were like, "Okay." Then we kind of just didn't do it, so January passed. February passed. March, I can't remember when we did the first one, but all of a sudden, I just woke up one morning. I was like, "Let's just do it," and then I called him. I met him at a café, Café Neo, funny enough, so there's a café in Nigeria called Café Neo. Matt Stauffer: Love it. Neo Ighodaro: I met him there and I was like, "Guy, we should do this thing, but I want to speak in pidgin." Pidgin is a weird form of English that we speak in Nigeria here. Matt Stauffer: Really? I had no idea. Neo Ighodaro: Yeah. It's called pidgin English. So, I'm like, "Guy, we could do this thing now." Literally saying, "Guy, let's do this stuff." Then he was like, "Okay. How do we start?" Then I was like, "We should create a Meetup page first." He was like, "Okay," so I tried doing my card and it didn't work, so he did. His card worked, and he created a Meetup page. I created a Twitter page. I started working on the website. Generally, I just noticed people were joining the Meetup page and we hadn't really started talking about it. We just put a couple of things there and say, "We might be hosting a Laravel Nigeria Meetup." Might. That was the word, might. Matt Stauffer: Right. Neo Ighodaro: Then people were like, "Oh, this is great. This is great. This is great. This is great." The Meetup page was just going higher and I was like, "What is happening?" Then that kind of put pressure on me to actually do the Meetup. Matt Stauffer: Right. Neo Ighodaro: Because I was kind of nervous that it would fail. I remember telling some of my colleagues at work that, "I don't know if I can actually do this. I mean, it's huge." Matt Stauffer: Right. Neo Ighodaro:"It's a huge thing. I don't have the money to sponsor it, but how would I do it?" Then someone was like, "Just ask for help," and I was like, "That kind of makes sense." The strategy I did was I went to the Laravel source code itself. I was like, "Okay. What companies are generally interested in Laravel?" I mean, that would be the companies that are more likely to support, right? Matt Stauffer: Right. Neo Ighodaro: I looked and I saw Pusher. I saw Nexmo and a couple of others. I was like, "Okay. Pusher, Pusher." Then I spoke to ... I think around that period, I just started guest-writing for them, so I messaged someone in their team and she was like, "That sounds great." I was like, "Cool." I didn't really believe it. Of course, she was like, "Yeah, sure." Matt Stauffer: Right. Neo Ighodaro: Back then, we had about a hundred people who RSVPed and I was feeling like it wasn't enough, but she was really, really, like, "Oh my God. A hundred?" I was like, "Yeah." Then she was like, "That's huge. We will support." I mean, that's the journey. We started getting people to support the entire thing. We couldn't use Hotels.ng space because 100 people, it wouldn't fit, so we talked to Andela, which is a company that outsources developers to bigger companies and I think Facebook invested in them recently. I talked to them and they were like, "Yeah, sure. Why not? I mean, we're all for the community. Yay," and I was like, "cool." So, we had that. If I was to tell someone about Laravel Nigeria, I would literally say from my own perspective, it's the belief that you can bring something out of nothing, the belief that you don't have to know about it to be able to do it. You just need to take the first step. Nobody's perfect at anything, and Laravel Nigeria was a shot in the dark, granted, but it was a lot of hard work and that shot paid off. I mean, it might have not paid off, but it did. I wouldn't have known if I didn't try, yeah? Matt Stauffer: Yeah. Neo Ighodaro: What we try to do now is tell people, "Hey, talk to everybody. Try and get people in remote communities, because right now Lagos seems like the place where a lot of things are happening." Matt Stauffer: Right. Neo Ighodaro:"We want people from other states. Mobilize your people. Try and get people to attend Meetups." In the past one month or two months, I've attended Meetups in places where I didn't expect people to come. I'm like, "Wow. Okay. Crazy." This is viewed as a state where you're like ... I didn't expect so many people to come out. People were out, and I was like, "It's happening." Laravel Nigeria is literally the belief that there are a lot of people out there. There are a lot of people who want it to happen. There are a lot of people who are hungry for this knowledge, a lot of people who already know, but just need a platform to come out and start speaking. This has given them a lot of them hope and a lot of that platform they need to really come out and be leaders, because that's what we want to create, a lot of leaders that can lead the new generation of developers, basically. Matt Stauffer: I love it. I've said a thousand times I could talk for another hour. I can't, but I'm going to wrap it up with just three

All JavaScript Podcasts by Devchat.tv
JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Sep 12, 2017 59:19


Tweet this episode JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump In this episode Aimee Knight and Charles Max Wood discuss Microsoft's Web Apps on Linux offering with Jeremy Likness and Michael Crump. [00:37] Michael Crump Introduction Michael is on the developer experience team for Azure. [00:52] Jeremy Likness Introduction Jeremy is on the cloud developer advocacy team. Their mission is to remove friction and support developers and work with teams to build a positive experience. The NodeJS team is headed up by John Papa. They have teams around the world and involved in many open source communities. They're focused on building documentation and creating great experiences [02:54] What is it about Azure that people should be getting excited about? Azure is a huge platform. It can be overwhelming. They're trying to help you start with your problem and then see the solution as it exists on Azure. Azure is growing to embrace the needs of developers as they solve these problems. The experience is intended to be open and easy to use for any developer in any language on any platform. It allows you to work in whatever environment you want. Standing up applications in production is tough. Azure provides services and facilities (and interfaces) that make it easy to manage infrastructure. You don't have to be an operations expert. Chuck mentions this messaging as he heard it at Microsoft Connect() last year. It's not about bringing you to .NET. It's about making it easy where you're at. Aimee adds that as a new-ish person in the community and Azure excites her because the portal and tutorials are easy to follow for many new programmers. A lot of these features are available across command lines, tools, and much more. The documentation is great. See our interview with Dan Fernandez on the Microsoft Docs. [12:04] Web Apps on Linux Web application as a service offering from Microsoft. I don't need to worry about the platform, just what's different about my application. Web Apps has traditionally been on Windows. Web Apps on Linux is in preview. You can choose the size of your infrastructure. You only get billed for what you use and can scale up. Setting up multiple servers, managing synchronization and load balancing is a pain. Web Apps gives you a clean interface that makes this management easy. You can also scale across multiple datacenters around the world. [15:06] Why Linux? What's hard about Windows? Node was originally created on Linux and many tools run nicely on Linux. It was later ported to Windows. The toolchains and IDE's and build processes is in an ecosystem that is targeted more toward Linux than Windows. This allows people to work in an environment that operates how they expect instead of trying to map to an underlying Windows kernel. Aimee gives the example of trying to set up ImageMagick on Windows. Web Apps on Linux also allows you to build integrations with your tools that let you build, test, and deploy your application automatically. [19:12] Supported Runtimes Web Apps on Linux supports Node, PHP, Ruby, and .NET Core. You can run a docker container with Node up to 6.x. If you want Node 7.x and 8.x you can create your own Docker container. Web Apps on Linux is build on Docker. The containers also have SSH, so developers can log into the docker container and troubleshoot problems on the container. If you can build a container, you can also run it on this service. At certain levels, there's automatic scaling. [22:06] Consistency between containers? Shared ownership of state or assets It depends on how you build your app. The Docker containers have a shared storage where all the containers have access to the same data and state. There's a system called kudu that makes this really simple. You can also pull logs across all systems. You can also use SSH in the browser [25:23] What's painful about Linux and containers? How is the application built and how does it manage state so that you can isolate issues. If you have 20 containers, can you connect to the right one. It's up to you to manage correlation between containers so you can find the information you need. Knowing your traffic and understanding what to do to prepare for it with scaling and automation is sometimes more art than science. [28:28] How should you manage state? A lot of these systems lend themselves to running stateless, but you don't want to run mongodb on each container versus running one mongodb instance that everything attaches. You want a common place to store data for the entire app for shared state. [30:34] CosmosDB (was DocumentDB) It's an API equivalent to MongoDB. It's a database as a service and you can connect your containers to the CosmosDB in Azure using your portal to make it super easy. You may need to open up some firewall rules, but it should be pretty straightforward. [34:14] Third Party Logging Management Apps Azure has a service that provides metrics (Application Insights) and a logging service. Many other companies use elasticsearch based solutions that solve some of these problems as well. [36:06] How do people use Web Apps on Linux? Companies building new applications many times want to run without managing any infrastructure. So, they use Azure Functions, and other services on Azure. Lift and shift: Take a virtual machine and change it into a web app container that they can run in the cloud. They also move from SQL Server on a server to SQL Server on the cloud. Moving from hosted MongoDB to CosmosDB. You can also use any images on DockerHub. [40:06] Continuous Integration and Continuous Deployment Whether you're using a private registry or cloud registry. When you publish a new image, it'll use a webhook to pull the custom image and deploy it. Or to run it through Continuous Integration and then deploy it without any human interaction. Chuck mentions the case when you haven't logged into a server for a while, there's a huge backlog of system updates. Updating your container definitions makes upkeep automatic. [42:02] Process files and workers with PM2 format You can set up instances to run across cores with the PM2 definitions. You can also make it run various types of workers on different containers. Why did you use PM2? What other uses are there for this kind of setup? You can tell it which processes to start up on boot. You can also have it restart processes when a file is changed, for example, with a config file you can have it restart the processes that run off that config file. [45:38] How to get started Getting started with Node docs.microsoft.com Trial account with a few hundred dollars in Azure credit. Michael's Links michaelcrump.net @mbcrump github.com/mbcrump Jeremy's Links bit.ly/coderblog @jeremylikness github/jeremylikness Picks Aimee Having a little bit of mindfulness while waiting on code and tests to run. Joe Ozark on Netflix Star Wars: Rogue One Chuck Travelers on Netflix Jeremy Ozark filming in Woodstock, GA Autonomous Smart Desk LED light strips Michael Conference Call Bingo Life (Movie) Get Out (Movie)

JavaScript Jabber
JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

JavaScript Jabber

Play Episode Listen Later Sep 12, 2017 59:19


Tweet this episode JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump In this episode Aimee Knight and Charles Max Wood discuss Microsoft's Web Apps on Linux offering with Jeremy Likness and Michael Crump. [00:37] Michael Crump Introduction Michael is on the developer experience team for Azure. [00:52] Jeremy Likness Introduction Jeremy is on the cloud developer advocacy team. Their mission is to remove friction and support developers and work with teams to build a positive experience. The NodeJS team is headed up by John Papa. They have teams around the world and involved in many open source communities. They're focused on building documentation and creating great experiences [02:54] What is it about Azure that people should be getting excited about? Azure is a huge platform. It can be overwhelming. They're trying to help you start with your problem and then see the solution as it exists on Azure. Azure is growing to embrace the needs of developers as they solve these problems. The experience is intended to be open and easy to use for any developer in any language on any platform. It allows you to work in whatever environment you want. Standing up applications in production is tough. Azure provides services and facilities (and interfaces) that make it easy to manage infrastructure. You don't have to be an operations expert. Chuck mentions this messaging as he heard it at Microsoft Connect() last year. It's not about bringing you to .NET. It's about making it easy where you're at. Aimee adds that as a new-ish person in the community and Azure excites her because the portal and tutorials are easy to follow for many new programmers. A lot of these features are available across command lines, tools, and much more. The documentation is great. See our interview with Dan Fernandez on the Microsoft Docs. [12:04] Web Apps on Linux Web application as a service offering from Microsoft. I don't need to worry about the platform, just what's different about my application. Web Apps has traditionally been on Windows. Web Apps on Linux is in preview. You can choose the size of your infrastructure. You only get billed for what you use and can scale up. Setting up multiple servers, managing synchronization and load balancing is a pain. Web Apps gives you a clean interface that makes this management easy. You can also scale across multiple datacenters around the world. [15:06] Why Linux? What's hard about Windows? Node was originally created on Linux and many tools run nicely on Linux. It was later ported to Windows. The toolchains and IDE's and build processes is in an ecosystem that is targeted more toward Linux than Windows. This allows people to work in an environment that operates how they expect instead of trying to map to an underlying Windows kernel. Aimee gives the example of trying to set up ImageMagick on Windows. Web Apps on Linux also allows you to build integrations with your tools that let you build, test, and deploy your application automatically. [19:12] Supported Runtimes Web Apps on Linux supports Node, PHP, Ruby, and .NET Core. You can run a docker container with Node up to 6.x. If you want Node 7.x and 8.x you can create your own Docker container. Web Apps on Linux is build on Docker. The containers also have SSH, so developers can log into the docker container and troubleshoot problems on the container. If you can build a container, you can also run it on this service. At certain levels, there's automatic scaling. [22:06] Consistency between containers? Shared ownership of state or assets It depends on how you build your app. The Docker containers have a shared storage where all the containers have access to the same data and state. There's a system called kudu that makes this really simple. You can also pull logs across all systems. You can also use SSH in the browser [25:23] What's painful about Linux and containers? How is the application built and how does it manage state so that you can isolate issues. If you have 20 containers, can you connect to the right one. It's up to you to manage correlation between containers so you can find the information you need. Knowing your traffic and understanding what to do to prepare for it with scaling and automation is sometimes more art than science. [28:28] How should you manage state? A lot of these systems lend themselves to running stateless, but you don't want to run mongodb on each container versus running one mongodb instance that everything attaches. You want a common place to store data for the entire app for shared state. [30:34] CosmosDB (was DocumentDB) It's an API equivalent to MongoDB. It's a database as a service and you can connect your containers to the CosmosDB in Azure using your portal to make it super easy. You may need to open up some firewall rules, but it should be pretty straightforward. [34:14] Third Party Logging Management Apps Azure has a service that provides metrics (Application Insights) and a logging service. Many other companies use elasticsearch based solutions that solve some of these problems as well. [36:06] How do people use Web Apps on Linux? Companies building new applications many times want to run without managing any infrastructure. So, they use Azure Functions, and other services on Azure. Lift and shift: Take a virtual machine and change it into a web app container that they can run in the cloud. They also move from SQL Server on a server to SQL Server on the cloud. Moving from hosted MongoDB to CosmosDB. You can also use any images on DockerHub. [40:06] Continuous Integration and Continuous Deployment Whether you're using a private registry or cloud registry. When you publish a new image, it'll use a webhook to pull the custom image and deploy it. Or to run it through Continuous Integration and then deploy it without any human interaction. Chuck mentions the case when you haven't logged into a server for a while, there's a huge backlog of system updates. Updating your container definitions makes upkeep automatic. [42:02] Process files and workers with PM2 format You can set up instances to run across cores with the PM2 definitions. You can also make it run various types of workers on different containers. Why did you use PM2? What other uses are there for this kind of setup? You can tell it which processes to start up on boot. You can also have it restart processes when a file is changed, for example, with a config file you can have it restart the processes that run off that config file. [45:38] How to get started Getting started with Node docs.microsoft.com Trial account with a few hundred dollars in Azure credit. Michael's Links michaelcrump.net @mbcrump github.com/mbcrump Jeremy's Links bit.ly/coderblog @jeremylikness github/jeremylikness Picks Aimee Having a little bit of mindfulness while waiting on code and tests to run. Joe Ozark on Netflix Star Wars: Rogue One Chuck Travelers on Netflix Jeremy Ozark filming in Woodstock, GA Autonomous Smart Desk LED light strips Michael Conference Call Bingo Life (Movie) Get Out (Movie)

Devchat.tv Master Feed
JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

Devchat.tv Master Feed

Play Episode Listen Later Sep 12, 2017 59:19


Tweet this episode JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump In this episode Aimee Knight and Charles Max Wood discuss Microsoft's Web Apps on Linux offering with Jeremy Likness and Michael Crump. [00:37] Michael Crump Introduction Michael is on the developer experience team for Azure. [00:52] Jeremy Likness Introduction Jeremy is on the cloud developer advocacy team. Their mission is to remove friction and support developers and work with teams to build a positive experience. The NodeJS team is headed up by John Papa. They have teams around the world and involved in many open source communities. They're focused on building documentation and creating great experiences [02:54] What is it about Azure that people should be getting excited about? Azure is a huge platform. It can be overwhelming. They're trying to help you start with your problem and then see the solution as it exists on Azure. Azure is growing to embrace the needs of developers as they solve these problems. The experience is intended to be open and easy to use for any developer in any language on any platform. It allows you to work in whatever environment you want. Standing up applications in production is tough. Azure provides services and facilities (and interfaces) that make it easy to manage infrastructure. You don't have to be an operations expert. Chuck mentions this messaging as he heard it at Microsoft Connect() last year. It's not about bringing you to .NET. It's about making it easy where you're at. Aimee adds that as a new-ish person in the community and Azure excites her because the portal and tutorials are easy to follow for many new programmers. A lot of these features are available across command lines, tools, and much more. The documentation is great. See our interview with Dan Fernandez on the Microsoft Docs. [12:04] Web Apps on Linux Web application as a service offering from Microsoft. I don't need to worry about the platform, just what's different about my application. Web Apps has traditionally been on Windows. Web Apps on Linux is in preview. You can choose the size of your infrastructure. You only get billed for what you use and can scale up. Setting up multiple servers, managing synchronization and load balancing is a pain. Web Apps gives you a clean interface that makes this management easy. You can also scale across multiple datacenters around the world. [15:06] Why Linux? What's hard about Windows? Node was originally created on Linux and many tools run nicely on Linux. It was later ported to Windows. The toolchains and IDE's and build processes is in an ecosystem that is targeted more toward Linux than Windows. This allows people to work in an environment that operates how they expect instead of trying to map to an underlying Windows kernel. Aimee gives the example of trying to set up ImageMagick on Windows. Web Apps on Linux also allows you to build integrations with your tools that let you build, test, and deploy your application automatically. [19:12] Supported Runtimes Web Apps on Linux supports Node, PHP, Ruby, and .NET Core. You can run a docker container with Node up to 6.x. If you want Node 7.x and 8.x you can create your own Docker container. Web Apps on Linux is build on Docker. The containers also have SSH, so developers can log into the docker container and troubleshoot problems on the container. If you can build a container, you can also run it on this service. At certain levels, there's automatic scaling. [22:06] Consistency between containers? Shared ownership of state or assets It depends on how you build your app. The Docker containers have a shared storage where all the containers have access to the same data and state. There's a system called kudu that makes this really simple. You can also pull logs across all systems. You can also use SSH in the browser [25:23] What's painful about Linux and containers? How is the application built and how does it manage state so that you can isolate issues. If you have 20 containers, can you connect to the right one. It's up to you to manage correlation between containers so you can find the information you need. Knowing your traffic and understanding what to do to prepare for it with scaling and automation is sometimes more art than science. [28:28] How should you manage state? A lot of these systems lend themselves to running stateless, but you don't want to run mongodb on each container versus running one mongodb instance that everything attaches. You want a common place to store data for the entire app for shared state. [30:34] CosmosDB (was DocumentDB) It's an API equivalent to MongoDB. It's a database as a service and you can connect your containers to the CosmosDB in Azure using your portal to make it super easy. You may need to open up some firewall rules, but it should be pretty straightforward. [34:14] Third Party Logging Management Apps Azure has a service that provides metrics (Application Insights) and a logging service. Many other companies use elasticsearch based solutions that solve some of these problems as well. [36:06] How do people use Web Apps on Linux? Companies building new applications many times want to run without managing any infrastructure. So, they use Azure Functions, and other services on Azure. Lift and shift: Take a virtual machine and change it into a web app container that they can run in the cloud. They also move from SQL Server on a server to SQL Server on the cloud. Moving from hosted MongoDB to CosmosDB. You can also use any images on DockerHub. [40:06] Continuous Integration and Continuous Deployment Whether you're using a private registry or cloud registry. When you publish a new image, it'll use a webhook to pull the custom image and deploy it. Or to run it through Continuous Integration and then deploy it without any human interaction. Chuck mentions the case when you haven't logged into a server for a while, there's a huge backlog of system updates. Updating your container definitions makes upkeep automatic. [42:02] Process files and workers with PM2 format You can set up instances to run across cores with the PM2 definitions. You can also make it run various types of workers on different containers. Why did you use PM2? What other uses are there for this kind of setup? You can tell it which processes to start up on boot. You can also have it restart processes when a file is changed, for example, with a config file you can have it restart the processes that run off that config file. [45:38] How to get started Getting started with Node docs.microsoft.com Trial account with a few hundred dollars in Azure credit. Michael's Links michaelcrump.net @mbcrump github.com/mbcrump Jeremy's Links bit.ly/coderblog @jeremylikness github/jeremylikness Picks Aimee Having a little bit of mindfulness while waiting on code and tests to run. Joe Ozark on Netflix Star Wars: Rogue One Chuck Travelers on Netflix Jeremy Ozark filming in Woodstock, GA Autonomous Smart Desk LED light strips Michael Conference Call Bingo Life (Movie) Get Out (Movie)

Good Point Podcast
46 - Browsers

Good Point Podcast

Play Episode Listen Later Sep 4, 2017 81:41


This week Rafael and Jeremy, two refugees of the browser wars, share tales of sacrifice and chivalry from the early days of the internet. A Muppet Family Christmas https://www.youtube.com/watch?v=ojtGHXsTXmU Bike sharing in China https://www.nytimes.com/2017/09/02/world/asia/china-beijing-dockless-bike-share.html?mcubz=1&_r=0 Browser wars https://www.wired.com/2009/01/awesome-infogra/ Mosaic browser https://en.wikipedia.org/wiki/Mosaic_(web_browser) Hotline https://en.wikipedia.org/wiki/Hotline_Communications Serial Box https://twitter.com/peteavey/status/24423749486903296 SVG https://developer.mozilla.org/en-US/docs/Web/SVG Webkit https://webkit.org/ Firefox https://www.mozilla.org/en-US/firefox/ Imagemagick https://www.imagemagick.org/script/index.php WebVR https://webvr.info/ Netscape https://en.wikipedia.org/wiki/Netscape AOL CDs https://techcrunch.com/2010/12/27/aol-discs-90s/ Compuserve https://en.wikipedia.org/wiki/CompuServe Apple eWorld https://en.wikipedia.org/wiki/EWorld Information Superhighway, 1991 https://www.youtube.com/watch?v=dk82TI92GO4 Information Superhighway, attributed to Nam June Paik and Al Gore https://en.wikipedia.org/wiki/Information_superhighway Adobe Flash https://en.wikipedia.org/wiki/Adobe_Flash_Player Why Chrome uses so much freaking RAM http://lifehacker.com/why-chrome-uses-so-much-freaking-ram-1702537477 The Story of Firefox OS https://medium.com/@bfrancis/the-story-of-firefox-os-cb5bf796e8fb Mobile First design https://www.uxpin.com/studio/blog/a-hands-on-guide-to-mobile-first-design/ Steve Jobs promotes Web 2.0 / Ajax apps (no SDK) https://www.youtube.com/watch?time_continue=42&v=8Vq993Td6ys App Fatigue https://techcrunch.com/2016/02/03/app-fatigue/ Mark Zuckerberg: Our Biggest Mistake Was Betting Too Much On HTML5 https://techcrunch.com/2012/09/11/mark-zuckerberg-our-biggest-mistake-with-mobile-was-betting-too-much-on-html5/ React Native https://facebook.github.io/react-native/ Rafael’s new app, Here Hear http://www.newrafael.com/herehear/ ** Commercial Break ** Reflections on the Burden of Men https://www.rotbom.com/ Jack Conte on reality of being famous on YouTube https://www.ted.com/talks/jack_conte_how_artists_can_finally_get_paid_in_the_digital_age Microserfs, Douglas Coupland, 1995 https://www.goodreads.com/book/show/2748.Microserfs JODI http://v2.nl/archive/organizations/jodi.org The Web Browser as Aesthetic https://creators.vice.com/en_us/article/z4yagw/digart-the-web-browser-as-aesthetic-framework-why-digital-art-today-looks-different Text Free Browsing http://textfreebrowsing.com/ Kobo https://www.kobo.com/ A/B testing and Multi-armed bandits https://vwo.com/blog/multi-armed-bandit-algorithm/ Tinder https://www.gotinder.com/ Why doing less drives more conversions https://neilpatel.com/blog/less-drives-conversions/ Olia Lialina, Summer, 2013 http://www.emiliegervais.com/olia/summer/ Rhizome’s Net Art Anthology https://anthology.rhizome.org/ The Browser Wars are back https://www.wired.com/2015/09/thompson-3/ Torrent files https://en.wikipedia.org/wiki/Torrent_file

Der Übercast
#UC077: Das Terminal A

Der Übercast

Play Episode Listen Later Mar 10, 2017 90:11


Unser hochgeschätztes macOS hat immer noch einen UNIX Unterbau. Der Inbegriff dessen ist wohl die Kommandozeile. Dieser Ort an dem man Herrscher über die Naturgewalten sein kann, wird heute von Andreas und Patrick genauer unter die Lupe genommen. Von häufig genutzten Befehlen hin zu Lieblingsapps geht es im Zick-Zack-Flug voran. Lieber Fluggast, wenn dir das Gehörte gefällt oder dir Sorgenfalten auf die edle Stirn fabriziert, dann haben wir etwas für dich: iTunes Bewertungen. Die heutige Episode von Der Übercast wird unterstützt von: Wire – der sichere Messenger für private und berufliche Kommunikation hatte kürzlich einen Sicherheitsaudit. Dieser bestätigt dem Messenger einen hohen Sicherheitsstandard. Zudem gehören – dank der neuen Textsuche – verlorengegangene Nachrichten ab sofort der Vergangenheit an. Giveaway Um ein T-Shirt zu gewinnen registriert euch einfach bei Wire - vorzugsweise über die Adresse ubercast.wire.com - und befreundet @derubercast. Im Chat dort beantworten wir auch jedwede Frage zur aktuellen Sendung, zur Show im Allgemeinen oder was die Antwort auf die allumfassendste Frage auf der Welt ist. Follow-up Plex’s Bold Plan To Take On The Streaming Goliaths Nützliche Reddit Bookmarklets hier und hier. Auch nicht schlecht: Go to subreddits’ imgur gallery Routen in Google Maps speichern und wieder aufrufen View your My Maps using Google Maps - Computer - Google Maps Help Save directions on My Maps - My Maps Help Laufrouten auf’s Handy mit MapMyRun ili - Wearable Translator VR Desktop for Mac - Use your Mac in Virtual Reality AirJack YouTube: Lickster ForkLift 3 Crates und Crates: Beatport Track Digging, But Way Better Passbolt – Open source password manager for teams #sysPass :: Systems Password Manager Terminal/Shell/Kommandozeile & Dotfiles Bash fish shell Zsh Oh My Zsh Der Unterschied zwischen .profile, .bashrc, .bash_profile, usw.: Stack Overflow Oft benutzt und gerne gesehen ⌃a, ⌃e, ⌃k !! ⌃r !$ => wiederholt das letzte Argument nach dem vorherigen Kommando ^nanp^nano => Rechtschreibekorrektur Lieblingstools, -binaries, -oneliner oder was auch immer iTerm2 - macOS Terminal Replacement iTerm Replacement Icon by Jason Long - Dribbble (Sketch Version) Using Hazel To Replace Application Icons — RocketINK Iterm Themes - Color Schemes and Themes for Iterm2 Patrick sagt auch Solarized den Krieg an. Er hat sich sattgesehen daran und braucht nun öfters Abwechslung. Mit iTerm kann man wunderbar Farbschemas Profilen zuweisen und diese auch der Shortcut aufrufen. Was sind unsere 5 liebsten CLI Tools? Andreas: ffmpeg gifenc.sh pdf2svg pandoc dayone_export Patrick: stow: Managing your dotfiles with GNU Stow wkhtmltopdf ImageMagick (siehe auch bei RocketINK) FileBot - The ultimate TV and Movie Renamer Remind – Roaring Penguin (Linux man page) voices: macOS CLI for changing the default TTS (text-to-speech) youtube-dl alias yt='youtube-dl -o "~/Desktop/%(uploader_id)s - %(title)s.%(ext)s"' alias tyt='torify youtube-dl -o "~/Desktop/%(uploader_id)s - %(title)s.%(ext)s"' alias yta='youtube-dl -f mp3/m4a/aac/wav/bestaudio -o "~/Desktop/%(uploader_id)s - %(title)s.%(ext)s"' alias tyta='torify youtube-dl -f bestaudio -o "~/Desktop/%(uploader_id)s - %(title)s.%(ext)s"' Dotfiles und Kram von anderen: commandlinefu.com BrettTerpstra.com: Shell tricks: the OS X open command herrbischoff/awesome-osx-command-line: Use your OS X terminal shell to do awesome things. sjl / dotfiles / source / — Bitbucket osxdaily.com: Basic Command Line Utilities, Tips, & Commands Lifehacker: Become a Command Line Ninja With These Time-Saving Shortcuts AWK one-liner collection Stackoverflow morgant/tools-osx: A small collection of command line tools for Mac OS X, incl.: clipcat, dict, eject, ql, swuser, trash & with. Package Manager Homebrew — The missing package manager for macOS Homebrew Cask Cakebrew Nix: The Purely Functional Package Manager Fink MacPorts Delight in Your Desktop Duo MacLibre – Open Source Software Distribution for Mac OS X Rudix Unsere Picks Patrick: Star Order Andreas: Fünf Hausmittel ersetzen eine Drogerie In Spenderlaune? Wir haben Flattr und PayPal am Start und würden uns freuen.

Keeping Up With Craft CMS
The Security Episode: Craft Security best practices, ImageMagick, Sherlock, and more

Keeping Up With Craft CMS

Play Episode Listen Later May 30, 2016 10:55


Recently in the Craft CMS world... ImageMagick (used by many Craft installs) has a security vulnerability. Michael & Andrew talk about the details and emphasize the importance of keeping your software up-to-date. We also talk about some emerging security best practices for Craft CMS as well as a new security audit plugin Sherlock.

Säkerhetspodcasten
Säkerhetspodcasten #58 - Ostrukturerat V.19

Säkerhetspodcasten

Play Episode Listen Later May 23, 2016 65:23


Detta är det femtioåttonde avsnittet av Säkerhetspodcasten, i vilket panelen diskuterar nya SSL/TLS-problem, Satoshis vara eller icke vara, sårbarheter i 7zip och ImageMagick och mycket mer!

Securit13 Podcast
Эпизод 60 - Magic!.. Or not?

Securit13 Podcast

Play Episode Listen Later May 20, 2016 51:58


Intro / Outro Awaken by TheDICE http://dig.ccmixter.org/files/TheDICE/48157 00:01:00 Вышел Phrack №69 http://phrack.org/issues/69/1.html 00:02:50 Widely Popular ImageMagick Tool Vulnerable to Remote Code Execution http://goo.gl/7aEobb Server-jacking exploits for ImageMagick are so trivial, you'll scream http://goo.gl/5AMmiM   Public Exploits Available for ImageMagick Vulnerabilities https://goo.gl/nlyEJL 00:08:48 Hacking Slack accounts: As easy as searching GitHub http://goo.gl/8bVCce 00:14:32 Vulnerability disclosure for Pornhub https://hackerone.com/pornhub 00:17:31 10-Year-Old Hacks Instagram; Wins $10K From Facebook http://goo.gl/icLLlO 00:21:02 Student gets conditional 18-month sentence in CRA Heartbleed breach http://goo.gl/AAXyGi 00:23:28 Anonymous attack Greek central bank, warns others http://goo.gl/tsdAlD 00:24:53 Wi-Fi network named 'mobile detonation device' grounds plane http://goo.gl/fyDhDY 00:26:54 Car Hackers Could Face Life In Prison. That's Insane! http://goo.gl/Cozzpo 00:30:01 Adobe, Microsoft Push Critical Updates http://goo.gl/cSskJK 00:30:59 How the Pwnedlist Got Pwned http://goo.gl/M2Ds4s 00:31:58 Here's how many US surveillance requests were rejected in 2015 http://goo.gl/FXrYIt 00:38:09 Twitter Bars Intelligence Agencies From Using Analytics Service http://goo.gl/3iFn15 00:39:47 Apple Stole My Music. No, Seriously. https://goo.gl/DKhcRT 00:42:28 Walmart confirms police report, says card readers compromised in Virginia http://goo.gl/4r0Dya 00:44:30 The Bitcoin affair: Craig Wright promises extraordinary proof http://www.bbc.com/news/technology-36193006 00:45:36 Another Day, Another Hack: Tens of Millions of Neopets Accounts http://goo.gl/gFK6oR

Programming Throwdown

programming languages personal capital ffmpeg imagemagick paranoia rpg programming throwdown
Command Line TV
Episode 7: ImageMagick

Command Line TV

Play Episode Listen Later Sep 7, 2015


We look at ImageMagick, a powerful suite of command-line tools for doing image processing. With it, we resize, crop, blur, and do format-conversion on a collection of image files.

imagemagick
RailsCasts (Mobile)
#374 Image Manipulation

RailsCasts (Mobile)

Play Episode Listen Later Aug 16, 2012 11:23


Learn how to do extensive image manipulation with the ImageMagick commands. Also learn how RMagick can be used in combination with CarrierWave to process uploaded images.

manipulation imagemagick carrierwave rmagick
RailsCasts
#374 Image Manipulation

RailsCasts

Play Episode Listen Later Aug 16, 2012 11:23


Learn how to do extensive image manipulation with the ImageMagick commands. Also learn how RMagick can be used in combination with CarrierWave to process uploaded images.

manipulation imagemagick carrierwave rmagick
IBM developerWorks podcasts
TWOdW: Pulse 2012, ImageMagick, VIOS, Java cloud security, code centric development

IBM developerWorks podcasts

Play Episode Listen Later Jan 26, 2012 10:59


John and I are back with our weekly rundown of new content highlights and focuses on developerWorks. We also do a little preview of Pulse 2012 which will be happening in early March in Las Vegas, with the theme, "Rethink IT. Reinvent Business With Cloud Computing."