Podcasts about HTML

Share on
Share on Facebook
Share on Twitter
Share on Reddit
Share on LinkedIn
Copy link to clipboard

Hypertext Markup Language

  • 1,795PODCASTS
  • 6,657EPISODES
  • 37mAVG DURATION
  • 1DAILY NEW EPISODE
  • Aug 15, 2022LATEST
HTML

POPULARITY

20122013201420152016201720182019202020212022


Best podcasts about HTML

Show all podcasts related to html

Latest podcast episodes about HTML

MacCast (Enhanced) - For Mac Geeks, by Mac Geeks

An enhanced podcast about all things Macintosh. For Mac geeks, by Mac geeks. Episode 839. Apple iPhone 14 vs 14 Pro. Why more is more.. Scorsese and DiCaprio in second Apple TV+ Project. Additional bits on products coming soon. Make a file "nvisible" in macOS. The mysterious jumping cursor. Tiny video in group messages on iOS. Special thanks to our sponsor: Zocdoc Shownotes in: HTML or OPML Subscribe to the Podcast Feed or Get the MP3

JS Party
Build faster websites with Astro 1.0

JS Party

Play Episode Listen Later Aug 12, 2022 59:58


Astro 1.0 just dropped so Amal got its creator, Fred K. Schott, on the pod for the full rundown. They go deep on how Astro is built to pull content from anywhere and serve it fast with their next-gen island architecture.

Extreme Health Radio
Dr. Betty Martini – Aspartame Is In Over 6,000 Food Products & Could Be Killing You, Are You Eating Any Of Them?

Extreme Health Radio

Play Episode Listen Later Aug 11, 2022 67:56


[include file=get-in-itunes.html]Today was a great show about the dangers of aspartame. Dr. Betty Martini talked about how aspartame turns into a formaldahyde and actually damages the mitochondria in your cells. This is nasty stuff that you don't want to be eating. The trouble is that it's in over 6000 different food products and even more ingredients. We also discussed how MSG and natural flavors are almost as toxic and damaging to the human body. Please pass this show on to you friends and family. Aspartame is the sweet kiss of death. It's in over 6,000 food products. Listen to Dr. Betty Martini talk about it here. - Click to tweet this! - Get Notified:[ois skin="Show Page2"] - Commercials: - Please Subscribe: Subscribe To Our Radio Show For Updates! - Other Shows:[include file=show-links.html] | All Shows With This Guest - Show Date:Monday 8/19/2013 - Show Guest:Dr. Betty Martini - Guest Info:Dr. Betty Martini is the founder of the worldwide volunteer force, Mission Possible World Health International, which is committed to removing the deadly chemical aspartame from our food. This poison has brought more complaints to the American Food and Drug Administration than any other additive and is responsible for 75% of such complaints to that agency. From 10,000 consumer complaints FDA compiled a list of 92 symptoms, including death. They used to mail this list out, but now you can't get the list without a congressman or Freedom of Information Act request.Read More... Dr. Martini has been awarded an honorary Doctor of Humanities degree for the work she has done and continues to do in alerting the world to the dangers of aspartame and other unhealthy chemicals and additives. Dr. Martini has spent 22 years in the medical field. While working with a hematologist she supplied the CDC with reports on leukemia, which CDC said, were more than all the case histories submitted by the entire Emory University Hospital system combined, an indication of the low level of physician generated reports to the CDC. This reveals that only a small percentage of serious health threats are collected and statistically tabulated. - Topic:Aspartame, MSG, natural flavors, food dyes, artificial sweeteners - Guest Website(s): http://www.mpwhi.com (Guest Social Links Below. Please Follow Them!) Facebook N/A Twitter N/A Youtube N/A - Guest Product(s):Click Below To Checkout The Products While Listening! :) N/A - Items Mentioned: Dr. Russell Blaylock The Blaylock Wellness Report Sweet Misery - documentary A taste the kills documentary Diane Fleming – Husband Died From Aspartame Eating May Be Hazardous To Your Health - The Case Against Food Additives. While Science Sleeps http://www.doorway.com Aspartame detox resource guide Email: Ralph Walton aspartame birth defects rwalton193@aol.com - Connect:Discuss This Episode With Others - Donate: (Opens in a new window - Every bit helps us to keep delivering even better shows that help you heal & thrive!) - Support & Share :) Copy and paste the following HTML code into any web page. Or you can grab a badge! Interview with Dr. Betty Martini - Video Version:Full Youtube Interview (Opens in a new window) Youtube Time - Follow Us!:Please consider ReTweeting the following update to share this episode...#Aspartame is the sweet kiss of death. It's in over 6,000 products. Listen to Dr. #BettyMartini talk about it... http://t.co/gwXNhEFSOl— Extreme Health Radio (@ehrshow) August 27, 2013 - Watch a very helpful video [video_lightbox_youtube video_id=kNTs_YgKivw width=640 height=480 anchor=tutorial] for this page. - Subscribe to iTunes or Leave a Review Subscribe to iTunes podcast

JS Party
Qwik is a new kind of web framework

JS Party

Play Episode Listen Later Aug 5, 2022 62:46


AngularJS creator Miško Hevery has a new web framework he wants to tell us about, but he's not pitching just another framework, but with different DX. He says that Qwik is a fundamental rethinking of how a web application should work. And he's here to convince Jerod & KBall that the implications of that are BIG.

PokeProblemsPodcast
http://pokeproblemspodcast.blogspot.com/2022/08/blog-post.htmlpodcast2022-08-04T19:00:00.199-07:00tag:blogger.com,1999:blog-5296267133562325042.post-8590722738061300958

PokeProblemsPodcast

Play Episode Listen Later Aug 5, 2022


Episode 239: The Elekid Episode of the PokeProblemsPodcast! Today, we talk news! And there is lots of it, thanks to this week's Pokemon Presents! Meet Fidough, the Puppy Pokemon! 🐶🍞This Pokémon has smooth, moist skin with elastic qualities. They intimidate their opponents by puffing up their bodies to appear bigger.❤️💜 #PokemonScarletViolet pic.twitter.com/XEf1HZDiGY— Pokémon (@Pokemon) August 3, 2022 In Pokemon GO, there's a lot going on! There's new features, like Daily Adventure Incense and the Community Ambassador Program. August is a busy month... Pokemon GO Fest Sapporo is happening now! The Bug Out event is August 10-16, Galarian Zigzagoon Community Day is August 13, and there will be in person events! The 2022 Pokémon World Championships will feature Pokémon GO for the very first time! The event is August 18-23, 2022! The Pokémon GO Fest 2022: Finale is going to be August 27. In Pokemon Sword and Shield, register by August 11 for the I Choose 'Chu! Online Competition. You can register now to take part in these electrifying Single Battles—just remember that your team can only consist of Pichu, Pikachu, and either Raichu or Alolan Raichu! Are you into the Pokemon TCG? Well, you can give out Halloween BOOster packs this year! Build-a-Bear has new Pikachu Plushes! GIANT SPHEAL PLUSH! The Pokemon Center has all kinds of calendars and books and the new "Pokemon Trainers" series including awesome shirts and wall art! In Pokemon Unite, GLACEON!!! Glaceon joins the competition in #PokemonUNITE on July 21! pic.twitter.com/2hfS5IEUoS— Pokémon UNITE (@PokemonUnite) July 19, 2022 So many games! Live A Live and the Portal Companion Collection are out now, but we have to wait until 2023 for Super Bomberman R 2... Monster Hunter chair! Mario Kart 8 DLC Part 2! Kirby Balls! @quitthebuild The KBU Phase 1 is complete! #Kirby #kirbyandtheforgottenland #Nintendo #gaming #videogames #kirbyballs ♬ original sound - Quit The Build Check out the Xenoblade Chronicles 3 launch party! There are cool related My Nintendo Rewards items, including a contest for great Xenoblade gear! Miz Sylver is obsessed with the new Beat Saber mix! UniQlo has restocked their SPYxFAMILY collection! Miz Sylver had an amazing time at the Museum of Pop Culture, especially the Ruth E. Carter exhibit! Thanks for listening! If you have any questions or comments, we want to hear from you. Tweet, email, or comment on the blog or Facebook to let us know! Follow @pokemoncastTweet!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');

Changelog Master Feed
Qwik is a new kind of web framework (JS Party #237)

Changelog Master Feed

Play Episode Listen Later Aug 5, 2022 62:46


AngularJS creator Miško Hevery has a new web framework he wants to tell us about, but he's not pitching just another framework, but with different DX. He says that Qwik is a fundamental rethinking of how a web application should work. And he's here to convince Jerod & KBall that the implications of that are BIG.

Extreme Health Radio
Raymond Francis – Taking Just 1 Antibiotic In Your Life Can Permanently Damage Your Gut, Here’s What To Do About It

Extreme Health Radio

Play Episode Listen Later Aug 5, 2022 77:51


Raymond Francis joined us to talk about his book called Never Feel Old Again. We talked about gut health, aging, bacteria and how there is really only 1 disease and that is cellular malfunction. Did you know that if you take just 1 antibiotic in your life, you can permanently disrupt the ratio of bacteria in your gut? Think twice before swallowing that next pharmaceutical drug. You may never be the same again after you take it. They won't tell you that in the doctor's office but these things are dangerous and they're killing people. We also talked about how stress and other medications are harming our health also and what to do about them. Raymond also talked about 3 foods which he says you should always avoid which are sugar, wheat and dairy. They're highly inflammatory and toxic to the human body. Then he said something very interesting about how the common cold can actually cause genetic damage to our bodies. I have never heard that before so that was quite fascinating to say the least. He also mentioned how mineral play a role in how our bodies can deal with blood sugar spikes. If you have low minerals you're not going to be able to handle sugar that well. We hope you enjoyed the show! :) Please pass it on to your friends to spread the message of hope! Sponsors For This Episode: Carnivora - Carnivora is also recommended by our friend Ty Bollinger and was taken by President Reagan in 1985. Grab some today and start boosting your immune health. We hope you enjoyed our interview with Raymond Francis as much as we did and if you did would you consider clicking "like" and "share" on this page to let your friends and family know about the work he is doing? Kate and I would greatly appreciate that! :) Show Notes For This Episode: Jose Roa The Q-Laser Healing System Carnivora Superfoods Good Morning Good Evening Qigong Vitamix Blenders Commercials During This Episode: Commercial #1 The Q-Laser Healing System Commercial #2 Carnivora Superfoods Commercial #3 Good Morning Good Evening Qigong Commercial #4 Vitamix Blenders Find Extreme Health Radio On: [include file=showpage-itunes-soundcloud-stitcher.html] Please Subscribe: Subscribe To Our Radio Show For Updates! Other Shows: [include file=show-links.html] Listen to other shows with this guest. Show Date: Thursday 7/17/2014 Show Guest: Raymond Francis Guest Info: An MIT-trained scientist, internationally recognized leader in health, and called “one of the few scientists who has achieved a breakthrough understanding of health and disease,” Raymond Francis is on the cutting-edge of biological science and an internationally recognized leader in the field of optimal-health maintenance. He has proposed an entirely new concept of health along with a simple program for achieving it called the Beyond Health Model. Raymond is chairman and CEO of Beyond Health Corporation, a supplier of highly advanced health education and world class health-supporting products to the public. In addition to being an author of two best selling books, Raymond Francis is the creator of the internationally-presented Beyond Health Seminar, author of the Pathways to Health newspaper columns, and has been a guest on more than 1500 radio and television shows. Show Topic: Bacteria, gut health, anti aging, cancer, disease prevention and more! Guest Website(s): http://beyondhealth.com/ Social Websites: Facebook https://www.facebook.com/BeyondHealthInternational Twitter https://twitter.com/BeyondHealth Others https://www.youtube.com/user/BeyondHealthInt Guest Product(s): Please Support Us If You Are Able: (Opens in a new window - Every bit helps us to keep delivering even better shows that help you heal & thrive!) Support & Share :) Copy and paste the following HTML code into any web page. Or you can grab a badge!

CodigoTecno
123 - Cómo pasar de 0 a Junior Developer - CodigoTecno

CodigoTecno

Play Episode Listen Later Aug 5, 2022 15:00


Iniciamos una serie: "Cómo pasar de 0 a Junior Developer" En base a mi experiencia como programador en los últimos 20 años, iniciamos el camino de convertirnos en desarrollador web, una de las tantas opciones. En este episodio, el repaso obligado de aprender HTML, CSS y Git. Imprescindibles para algunos, posibles de obviar para otros, la posibilidad de elegir tutoriales gratuitos o pagos que van desde Youtube pasando por Udemy o algunos otros. Hoy además existe la posibilidad de hacer un bootcamp, empezar como aprendíz en alguna empresa o decidirte por empezar un proyecto desde cero siguiendo tutoriales o bien conseguirte un mentor que te vaya guiando. Además existen foros y comunidades donde conseguir ayuda para ir solucionando los problemas con los que te vas a enfrentar en el día a día. Espero que esta serie te anime a entrar en el mundo de la programación, el mundo del desarrollo. Gracias por estar allí como cada semana y por último, si querés aprender a programar web o si buscas acompañamiento de proyectos principalmente con PHP, Laravel, Codeigniter, no dudes en consultarme. - https://www.facebook.com/codigotecno/ - https://www.instagram.com/codigotecno Sumate a la comunidad en Youtube: https://bit.ly/2JLaKRj En Telegram estamos empezando a armar el canal donde compartimos material que puede aportar a tu formación, recursos y cosillas interesantes. Te esperamos en : https://t.me/codigotecno Envíame un email : codigotecno (arroba) hotmail.com Seguinos en las redes de podcast mas populares: * En Spotify : https://spoti.fi/31Dp4Sq * En Ivoox : https://bit.ly/2JoLotl * En Itunes: https://apple.co/2WNKWHV * En Anchor.fm: https://bit.ly/3OiVCsN Te espero en los comentarios, animate y buen código para todos. ! Muy buen código para todos y hasta la próxima. !

Python Bytes
#295 Flutter + Python GUI Apps?

Python Bytes

Play Episode Listen Later Aug 4, 2022 36:16


Watch the live stream: Watch on YouTube About the show Sponsored by Microsoft for Startups Founders Hub. Michael #1: Faster routing for Flask & Quart Flask and Quart both utilise Werkzeug's HTTP route With the upcoming 2.2 release of Werkzeug this router will be significantly faster, with up to a factor of 5. Better for large sets of routes Micro-benchmarks are unaffected and are unlikely to show a speedup. Started with tree-based radix algorithm Moved to state machine algorithm because of wild cards Brian #2: Quarto: an open-source scientific and technical publishing system built on Pandoc suggested by Paul Mackenzie Power of Pandoc and Jupyter Build documents - html, pdf, word presentations - Revealjs, PowerPoint, Beemer websites books - html, pdf, word, epub journal articles - acm, plos, elsevier, acs, jss Publish GitHub pages, Netlify, … kinda related - Kindle to support ePub Michael #3: Flet UI via Mikael Honkala New and upcoming UI framework by Feodor Fitzner: flet. It has a very interesting stack - a Python client driving a Flutter front-end via a Go server. That sounds complicated, but the developer experience is incredibly simple. Installation is just pip install flet. Here's a quick and stupid but working sample: import time import flet from flet import Column, ElevatedButton, Page, Row, TextField def main(page: Page): text_field = TextField() def clear_field(event): text_field.value = "CLEARING" page.update() time.sleep(1) text_field.value = "" page.update() clear_button = ElevatedButton("Clear the field", on_click=clear_field) page.add(Row([Column([text_field, clear_button])], alignment="center")) page.update() flet.app(target=main) # If you run this, you get a native app window on Mac, Windows or Linux, looking something like this: While the example is simple, it shows the handling of an event, updating the UI, and even doing a little sleeping between the updates, without having to worry about threads and such. What's more important, if you change the last line to: flet.app(target=main, view=WEB_BROWSER) You get the exact same functionality, but as a web application in a browser, with support for multiple users and deep linking to different parts of the app. All without leaving the comfortable Python world, with its access to all Python libraries, and without having to learn 3 extra, completely different languages (yes, HTML, CSS and JavaScript). As this is Flutter, mobile support is in the works, after the basic UI functionality is all there. Check the project front page here: flet.dev Jump directly to the currently available controls: flet.dev/docs/controls Check couple of tutorials here: flet.dev/docs/tutorials Or read the plans for the mobile support here: flet.dev/blog/flet-mobile-strategy Brian #4: Building an authenticated Python CLI Project that uses click, rich, and OAth for using Twitter API Persistent authentication requests secret information from user using getpass and input Client ID, Client Secret, App name fetches bearer token from Twitter API stores token in netrc file I'm not familiar with netrc, so I don't know if this is a good idea or not. So I figured I'd ask Michael Extras Michael: New course: Django - Getting Started Joke: Light touches kingdom

Hacker Public Radio
HPR3654: Use the data in the Ogg feed to create a website.

Hacker Public Radio

Play Episode Listen Later Aug 4, 2022


Make a website using the HPR RSS Feed Welcome to part II of my experiment in how much can be done with the data ion the HPR feed In my previous episode https://hackerpublicradio.org/eps.php?id=3637 I discussed taking the data from the HPR feed and stuffing the useful bits into a sqlite database. Today, Ill discuss some of my adventures generating a static site using the feed data Lessons learned Maybe skip DB step I tend to over use Markdown - sometimes HTML is Better So much content on HPR Tech My original intent was to create markdown files that could be feed into an existing static site generator, something like Hugo or Jekyll. I started with markdown but had to add too much html. I'm am a bit fan of using Markdown, but it did not fit this particular use case Peewee - ORM - https://docs.peewee-orm.com Jinja - Templates - https://jinja.palletsprojects.com Feed as source of data I added some HTML for header footer Header bootstrap CSS columns hpr logo footer Links Copyright Pages Main page listing the most recent shows A page listing all shows Individual pages for each show A page listing all the hosts individual page for each host One thing I would like to see on the HPR page is a count of how many shows there are for each host. I have enough data, so I added show counts. Missing data host profiles - web page, avatars tags series Summary - The short 100 character summary of what your show is about License Other pages on the HPR site. What you need to know How to help out Requested topics ... How does it work Peewee to read from sqlite file Python aggregates the appropriate data Jinja Templates for index - passed data from most recent shows All shows host page corespondents - all host TODO Incorporate Comment feed Generate static copy of RSS feed. Copy content from HPR pages that are not in the RSS feed. Generate Tags from Keywords in the show notes. Only use the Full Feed on the first run. Links Project - https://gitlab.com/norrist/hprfeed2db - Suggestions/Pull Requests are welcome Example site - https://hpr.norrist.xyz/

Complete Developer Podcast

HTTP or hypertext transfer protocol is a protocol for transferring documents: HTML, images, etc. between a client, usually a web browser and a server. HTTP verbs or HTTP methods are codified forms of communication in the client-server relationship. Read more › The post HTTP Verbs appeared first on Complete Developer Podcast.

Remake
016. Joe Macleod: Designing the End

Remake

Play Episode Listen Later Aug 4, 2022 78:54


REVISITING EPISODE 016:   Joe Macleod was Global Head of Design for the legendary Design agency and game studio UsTwo, and is a veteran with decades of experience across service, digital, and product sectors.   In recent years, he became fascinated with the problem of designing good ending experiences and is the founder of what he calls “the world's first customer ending business”. It's not what you think - no customers get killed in the process. Instead, Joe is focused on giving customers a positive, meaningful, and socially responsible end of relationship experience.   His first book, titled Ends, is a look into the importance of thinking about offboarding - from sustainability and recycling, through data and privacy, to retiring old products and tools, and finds the roots of our collective repression of the end of cycle problem in our fear of death, and the rise of mass market capitalism.   EPISODE SUMMARY   In this conversation we discuss: [2:18] Covid situation in Stockholm. [5:41] Growing up in the UK as a child with dyslexia, developing a sense of independence. [9:55] Early involvement in graphics, very early HTML and digital design work, and interaction design. [13:13] Getting involved with Mobile early at Orange and Nokia. [15:02] Observing the rise and fall of Nokia. [16:57] Joining legendary digital agency UsTwo. [26:06] The Off-Boarding Problem. [32:11] Getting Interested in Endings. [38:18] The Western Avoidance of Death. [41:07] A Chance to Reflect. [46:18] The Move Away from Endings. [51:11] Why is it important? [58:19] The Narrative Importance of Ending. [59:18] The Ends Book, and the 2nd Book. [1:14:29] Why the Focus on Endings?   EPISODE LINKS Joe's Links

The Untold Stories of Open Source
The Call for Code Project, with Daniel Krook

The Untold Stories of Open Source

Play Episode Listen Later Aug 4, 2022 26:14


Technology influences every aspect of our life. It's hard to remember a time when analog was separate from the digital. How do we balance the pace of innovation with its social impact when everything is changing so quickly?  For Daniel Krook, these two threads converged in 1995.  Dan went to Trinity College, a small liberal arts school in Hartford, Connecticut. He wasn't sure what to major in, a common dilemma when making the jump from high school to college. The choice of a liberal arts school offered a broad range of choices and an introduction to different personalities. There was a lot of mixing of people from different backgrounds with different interests.  Dan was a political science major and graduated with a double major in international studies, but he happened to live with a computer science major his first year. "Back in 95, I was introduced to web development.  It was a very wired campus. building websites,  deploying  stupid little fun hobby websites. And that's really what got me into learning HTML, the early days of JavaScript. I took my first course on that in 97. So blows my mind 25 years ago.   "Just learning,  to create something and immediately see it visible  was great. And you contrast that with  policymaking, where it takes a long time to establish an impact and things can be reversed by the change in administration on all the work you did." "The Untold Stories of Open Source" is a Linux Foundation Project.

Software Developer's Journey
#213 Wynn Netherland is a man of APIs and wrappers

Software Developer's Journey

Play Episode Listen Later Aug 2, 2022 49:01


Wynn took us on a story made of APIs, wrappers, and interfaces. He first told us about his law studies and how HTML and building websites slowly made their way into his life. We talked about classic ASP and working in a team. We spoke about creating your company and wearing many hats. And we spoke about how API design and wrapping APIs took Wynn to Github and further.Here are the links from the show:https://www.twitter.com/pengwynnhttps://wynnnetherland.comhttps://www.linkedin.com/in/netherlandhttps://wynnnetherland.com/journal/what-makes-a-good-api-wrapper/https://github.com/octokitCreditsCover Heliotrope by Blue Dot Sessions is licensed CC BY-NC-ND 4.0.Your host is Timothée (Tim) Bourguignon, more about him at timbourguignon.fr.Gift the podcast a rating on one of the significant platforms https://devjourney.info/subscribeSupport the show

API Busters
API Environmentalism with Alexander Karan of Climate Clever

API Busters

Play Episode Listen Later Aug 2, 2022 41:08


Mike chats with Alexander Karan, CTO of Climate Clever, where "You can't manage what you don't measure" is a mantra. Climate Clever is an API-first company helping businesses, schools, and homeowners in Australia manage and minimize their carbon footprints.  Climate Clever - https://www.climateclever.org/ Alexander's recent Article on APIs You Won't Hate: Modern API deployment options in the cloud Scope 1 and Scope 2 Inventory Guidance - US EPA Alexander Karan (@alexanderkaran_) on twitter Thank you so much to our sponsors: Lob: https://lob.com/careers Treblle: https://treblle.com/apisyoulove

Kodsnack
Kodsnack 484 - Underneath your library, with Chris Ferdinandi

Kodsnack

Play Episode Listen Later Aug 2, 2022 52:41


Fredrik chats with Chris Ferdinandi about vanilla Javascript, the pros and cons of libraries, the state of web components, and a lot more. Chris tells us about how and why he became the vanilla Javascript guy, and why he dislikes vanilla-js.com. We talk about why we as web developers pick up so many libraries, and why we often seem to use really large tools on really small problems. We wonder if different types of developers should think in different ways about libraries. Chris also talks about how different groups attending his courses approach the subject of vanilla Javascript in different ways, and of course a bit about where he hopes and thinks web development might be heading in the next few years. Thank you Cloudnet for sponsoring our VPS! Comments, questions or tips? We are @kodsnack, @tobiashieta, @oferlundand @bjoreman on Twitter, have a page on Facebook and can be emailed at info@kodsnack.se if you want to write longer. We read everything we receive. If you enjoy Kodsnack we would love a review in iTunes! You can also support the podcast by buying us a coffee (or two!) through Ko-fi. Links Chris Ferdinandi Vanilla Javascript Vanilla JS podcast - Chris' podcast Chris' newsletter gomakethings.com Jquery vanilla-js.com - a joke which may not have stood the test of time Library or framework? ES 5 Post from Dave Rupert about ripping Jquery out of Wordpress Chris' e-books vanillajsguides.com Chris' workshops DOM diffing Dan Abramov Redux Dan Abramov's course on Redux Vue Svelte Astro The stage 3 API for passing in a string of HTML and sanitizing it JSX Details and summary elements ARIA Web components Chris' course on web components Shadow DOM Constructable stylesheets Titles I help people learn vanilla Javascript Largely because of Jquery The vanilla JS guy The phrase “at scale” gets thrown in there Trying to hang a painting on your wall with a sledgehammer Perfect for a very narrow and specific set of use cases Just throwing one more of them in The pain of their own tech choices Teaching engineers how to find their next job I didn't realize you could do so much without a library Underneath your libary Without punishing the user Mostly HTML and a little bit of Javascript Waiting for the build to compile You never have to feel bored

Changelog Master Feed
The magic of monorepos (JS Party #236)

Changelog Master Feed

Play Episode Listen Later Jul 29, 2022 58:06


KBall and Juri dive deep into monorepos, their benefits and gotchas, and how Nx helps you improve the performance and maintainability of a monorepo setup.

JS Party
The magic of monorepos

JS Party

Play Episode Listen Later Jul 29, 2022 58:06


KBall and Juri dive deep into monorepos, their benefits and gotchas, and how Nx helps you improve the performance and maintainability of a monorepo setup.

Edge of the Web - An SEO Podcast for Today's Digital Marketer
519 | What You Didn't Know in News SEO w/ Barry Adams

Edge of the Web - An SEO Podcast for Today's Digital Marketer

Play Episode Listen Later Jul 29, 2022 42:06


In this second segment of our interview with Barry Adams, we unpacked further some SEO tips for the news publishing industry. We delve into misconceptions about how Google processes news sites. We also find some shocking points, including how Google looks at titles in news posts. We finish up with a discussion about truth in the news industry and how that affects rank. Be sure to check out the first part of the interview: we start with some major SEO points common from over 50 news site audits Barry has performed. [00:05:18] Don't Make Optimization a Challenge for the Writers [00:08:48] The Navigation of the Site Cannot Be Overlooked [00:12:33] EDGE of the Web Title Sponsor: Site Strategics [00:13:19] Which is a Stronger Optimization Signal: Nav Links or Site Structure? [00:16:53] The Title Isn't Important: How About That? [00:18:17] Google Doesn't Even Read the Content Until It Reads the Structured Data [00:20:05] Google Doesn't Even Render the HTML. News is Fast [00:23:07] EDGE of the Web Sponsor: edgeofthewebradio.com/wix [00:23:37] The Monetization Factor: Where Load Time Dies [00:28:21] Small Changes Over Time Make the Difference. [00:32:00] How Valuable is Trust in News? [00:39:04] News and Editorial SEO Summit: NewsSeo.io

VO BOSS Podcast
Search Engine Optimization

VO BOSS Podcast

Play Episode Listen Later Jul 26, 2022 29:24


What do Google, P2Ps, and Instagram all have in common? They are search engines! This week, Anne & Erikka talk tech. More specifically, SEO and how you can use keywords to improve your searchability & business. Our websites and online profiles are our digital storefronts. The words we put on them are the secret to getting found by clients, so specificity and consistency are essential. Listen up Bosses, we've got tips & tricks just for you! Transcript >> It's time to take your business to the next level, the BOSS level! These are the premiere Business Owner Strategies and Successes being utilized by the industry's top talent today. Rock your business like a BOSS, a VO BOSS! Now let's welcome your host, Anne Ganguzza. Anne: Hey everyone. Welcome to the VO BOSS podcast. I'm your host Anne Ganguzza, and I am here back with special guest co-host Erikka J. Hey Erikka. Erikka: Hey Anne, how are you today? Anne: I'm doing good. What's going on with you? Erikka: Oh, nothing, man. Just happy to be back and happy to have -- actually, I just had a job that walked in on my website, and I was so excited because I love getting those. Anne: Ah, oh my God. I love that. You said that because walking in on your website, that's the best kind of job to get because you don't have to do all the work of auditioning. They've already come to your website. They've heard your demos. And they've liked what they've heard, and then they contact you and say how much? Erikka: Yeah. They just walk in and wanna hand you money for you doing the talking. So I love that. Anne: I love that. That is such an efficient way to work. Not that -- look, I'm not gonna blast anybody who auditions. I mean, I audition. I audition for my agents every day and thankfully I'm busy because I do a lot of things in my business that I don't really have a ton of time to audition outside of, for my agents. And so when it comes in on my website or however they find me online, I absolutely love the inquiry because they don't necessarily need an audition. They're just saying here's my job. How much will it cost? Erikka: Yeah. Yeah. Well, I mean, you know, talking about balance, yeah sure, we do auditions every day. Anne: Yeah. Erikka: And that's a great way to land work. And a lot of the work that we get from our agents where we have to audition are those big, you know, really great jobs, but having a balanced approach to your business and having a diverse set of leads that come in, having that walk-in money where you don't really have to do that audition work. And it's just like, hey, we want you to do this job. We saw your website and love your work. And when can we schedule a session and how much? Like, that's great. It's a good balance. Anne: Love it, love it. And so I think so important to talk about is SEO, because that plays a large part in how people find you online, a large part in how people find me and my website, and then pretty much say, hey, I like your voice. How much will it cost? So let's talk a little bit about SEO, search engine optimization. I know a lot of people like get discombobulated when we start talking about technological things like that and SEO. And disclaimer here, I am not an SEO expert, but I have definitely employed certain things on my website that have allowed me to be found easier. And it has really contributed greatly to those people that walk in and ask for work from me, which I think is amazing. Erikka, what about your experiences? Erikka: Absolutely. I mean, if you think about it, when it gets a little intimidating, you just think about SEO, as Anne said, stands for search engine optimization. What is Google? A search engine. What are all these social media sites essentially? A search engine. Even the P2Ps, a search engine, they're looking for things. So all you're doing is optimizing your website so that you are found more easily on that search engine when they're searching for things that are relevant to your website. Anne: Yes, absolutely. Or your online presence. I know. I -- Erikka: Yeah, absolutely. Anne: -- I bring it back to the website because I think the website is the core of who our businesses are. And the core website will allow anyone to come find me, listen to my demos and then pay me money. So it's like a full cycle. That's my online storefront. And so let's talk about how we can optimize our online presence for good SEO, Erikka. Erikka: Yeah. Yeah. Anne: What's the first thing? Erikka: I think for me, I saw the jump when I went into -- 'cause currently my site is based on SquareSpace. I'm in the process of moving over to WordPress. But there is, if you dig into those sites, there are sections that are specifically for SEO. And if you go in there and you start putting in, I use keywords that I know when someone who is looking for me or my type of sound or what I bring to the table as a voice talent, I'm putting those keywords in my SEO box so that when they're searching for Black female voice talent, or authoritative, or sounds like Viola Davis or whatever, I'm coming up in those options. So I think that's number one is making sure that you have the right copy on your website and the right terms that are specifically driving SEO on your website listed there. Anne: Let's talk a little bit more about keywords because I think keywords are what, you know, people are like, well, what keywords should I use? And I think keywords are very specific to everybody, every person. And I think everybody wants to be found for the keyword voiceover. Erikka: Yeah. Anne: You know? Erikka: Everybody, Anne: Everybody. And here's the deal. The sites that have a lot of people that have voiceover in their profile, that word, are going to be the ones that get found first because there's many occurrences. So keywords are, basically in Google, if you rank highly for a particular keyword, you will show up on the first page, which is desirable to show up on the first page. 'Cause many people, when they search myself included, I don't always go to the second or third pages. However, I will say, Erikka, I don't know if you've noticed recently, there's been an awful lot of ads on the first page of Google lately. Erikka: There have. Anne: A lot. Erikka: Definitely. And not just Google, but like, you know, I went to like search for a restaurant on like Yelp or something, and it was like, it wasn't necessarily the best, but it was ranked first because it was sponsored, and you have to look for that word, and it's like, oh wait. . So yeah, lots of ads. Anne: And so I think that by the way, Erikka, this is probably another podcast episode, but thinking about marketing and ads, adding ads into your daily practice could be something that would be worthwhile. And again, that's another investment, but I say that just because I'm noticing the increase on the first page of Google of ads showing up. And so you wanna make sure that the keyword that people search for will show up your entry on the first page, if possible, because not many people click to the second or third pages. However, I will say because of the amount of ads I have been going to the second page more often now. Erikka: Yeah. I've seen that. Anne: But what makes a good keyword? So of course you can put voiceover in your body of text that you put on your website or on your profile. But I also think you definitely need to target it more specifically to what you want to be found for. So for example, if somebody typed in voiceover coach or commercial voiceover coach, and I'd have to keep checking right now, but I have certain words that I wanna be found for. But if somebody types in commercial VO coach, that's a different set of words than commercial voiceover coach. So keep that in mind because people say, well, I didn't find you when I searched for you under commercial VO coach. And I'm like, well, that doesn't necessarily mean that you won't find me under commercial voiceover coach. So I think a lot of times in order to get yourself found on that first page, try to think specifically and narrow down that focus on your target. So for example, if I say "commercial voiceover Orange County," I will show up on the first page exactly. Or "narration voiceover coach Orange County," that kind of thing. And if I don't, by the time this airs , I will, I will be working to make sure that that happens because I have a certain set of words that I wanna be found for. Now, it would be great if I could be found for voiceover coach, that in general, but there's a lot of voiceover coaches out there that use that as well as their a search term. So it really behooves you to think about what it is that you wanna be found for. Erikka: Absolutely being specific is so key 'cause like you said, everyone is gonna have voiceover and not just that, but the first page, if you just have voiceover or even VO or just those sort of generic terms, you're gonna get eaten up by the sites that are corporations that have thousands of dollars into voiceover, some of the P2Ps. Anne: Exactly. Erikka: You know what I mean? So you're gonna get pushed down and, and maybe not even be in the first three pages. You'll get found for what you wanna get found for, for what really your niche is because we all have different areas of expertise. Anne: Exactly. Erikka: Not just in genre, but in like how our voice sounds like, how do you describe your voice?What adjectives do you use? What celebrity references would you compare your voice to? Anne: I think celebrity references are great too. Erikka: Oh yeah. Yeah. Anne: So many people forget about that, their soundalike, and that really helps. And I think you should absolutely put that on your website. Because that will help target the search even more. Yeah. Erikka: Alt text in photos is another good thing to have just to get your site higher ranked in general. The better that Google likes your website, doing things like to make it clean and having the hierarchy right so you get site mapped, and that's where like if you search for a website and you'll see where it says, like if you search for Erikka J, you'll see like about and voiceover and music, like you'll see the different subpages on the Google initial search, that means you've been site mapped. So Google kind of ranks you higher just for that reason alone. So a lot of different things to consider. Anne: Well, I think that that's wonderful. I think, so number one is knowing that. The way search engine optimization works is, or the way search engines work is they pretty much keyword or they index your website with all the words on it. And so when somebody says to you, oh, I think that your website is too busy or it's too wordy. I always say, mm, think again. Erikka: Yeah. Yeah. Anne: I mean, if you ever look at my website, I've got words everywhere. And so the reason for that is for SEO purposes. I want to be able to be found. And so these people they're like, I really want clean voiceover webpages that, you know, you can get to the demos right away, which I agree with, but I'll tell you what. Clean doesn't necessarily mean that you're not being verbose about who you are and what kind of a business you are. Because when I search for, let's say, I wanna find a particular product, like I'm trying to find green chickpeas. I just say that -- Erikka: That's pretty particular. Anne: It's particular, and it's very difficult to find green chickpeas, but when I type that in the websites that come back, I wanna be able to click on them and immediately purchase. And so when somebody types in those keywords for you, commercial voiceover or explainer narrator, whatever that is, you wanna show up on that first page. And then when they click on you, you want that page to be accessible and easy to buy. Erikka: Yes. Yes. Anne: Easy to buy and look professional. So I think in terms of the SEO, the search engine optimization being optimized for your site, I think it helps to have more words that accurately describe who your business is and what words you wanna be found as. So you must include those. And you mentioned the alt text, which is great. And somebody who doesn't necessarily design websites may not know what that is. But that is text that you put around an image in the code of the HTML of the website, which you can do if you understand a little bit about WordPress or whatever your website has been developed in. My websites are all in Wix now. I was using WordPress and then my websites became very complex in terms of eCommerce happening. I have a CRM embedded. I have email that I'm sending from these websites. So Wix kind of worked out for me for that because it had all of those embedded into the website, those capabilities. And with that, any web provider, if it's Wix, if it's WordPress, you know, hosted on a GoDaddy website, whatever it is, they're going to have some sort of provision for SEO where you can insert keywords. That is very, very helpful, not only having the words on your website, and I think also dividing your website into different sections. So like I have a commercial voiceover landing page. I have a corporate narration landing page. I have an explainer landing page, a telephony landing page. And so that just makes it even easier to find, because again, I can put more of those words on my website by having specific landing pages Erikka: And it's more targeted. So I mean, you know, obviously we're talking about having the right copy and having, you know, these SEO terms. You don't wanna word vomit, right, and just have like all the words that you think are gonna get you found. It still has to be cohesive and make sense. And it has to be true. Nothing's worse -- I don't know about you guys, but if I'm searching for like great Mexican food near me and I get something that's totally unrelated, that's annoying, and it pisses your buyer off. So make sure it's still relevant. So definitely getting those pages that are relevant to the topic can target who you're trying to talk to with that demographic. And I believe it may have changed 'cause I know Google was more so understood words and they're starting to have more like a computer vision where they can understand images more. But I think having at least 500 words was the cutoff last I heard from someone that worked at Google per page to get it kind of recognized and rank. Anne: Yeah. I think they're starting to recognize words within photos as well. Erikka: They are. Yep. Yep. Anne: I absolutely think that having, first of all, more words and targeted words that make sense -- by the way, you'll get penalized, if you just do what they call keyword stuffing. So you can't just throw in the words. And as a matter of fact, if you throw in more words like voiceover talent or voiceover or VO and you put too many of them in your pages and they don't make sense, you'll get penalized and you certainly don't want that to happen. And by the way, I always tell people that SEO is one of those things. Now we talk about Google, right, because that's my search engine. I don't really go to any other search engine. Do you, Erikka? Erikka: I don't. Anne: Yeah. So in reality there are other search engines, but I really don't use any. It's always Google, and nobody knows really Google's algorithm unless you work for Google. And that is a proprietary thing. And I remember SEO people would study that and there are different versions of the Google algorithm that come out and they name them. And so every time Google would come out with a new algorithm, they'd say, well -- and I think one of 'em was called like the penguin. I can't remember, but everybody would come out and say, okay, since Google's new algorithm, here's what you need to do to get good SEO. And so I'm just gonna say, if you don't work for Google, you don't know you don't. You just don't. So if you have somebody that comes to you and says, I can make you show up on the front page, I want you to probably just run far away. Because I just have never really believed people 'cause that used to be a real business. People would just be, they were SEO people and we can get you on the front page and you pay us all this money. And in reality they would keyword stuff. And that was back in the day. And I still have people who email me and spam me about SEO and getting myself on the front page. So beware -- Erikka: Me too. Anne: -- that, unless they work for Google, they don't really know. And I'm all about, and I think Erikka, you too, I'm all about organic SEO, and organic is absolutely let's write the verbiage. Let's use the words on our website and in our profiles that accurately describes who we are, what we do and what we would like to be found for and not keyword stuff. And that's worked wonders for me in the past years because as I mentioned before, I have a lot of different divisions of my business that I work at. And I don't have time to audition all the time. So for me getting work that finds me or getting clients that find me first, then they have the opportunity to listen to the demos on my site. And if my demos are targeted to the specific genre, and they nail the sound that the client is looking for, boom, I've just taken care of half of the work in terms of getting that lead and then solidifying it so that I can get paid. Erikka: Yeah, absolutely. You don't want someone to find you and then they find that you weren't the right match. You don't want to attract the wrong client and ends up wasting your time. So the more targeted and sort of more strategic that you are with those keywords to make the right match happen automated, take that manual workout for yourself, it's a win for both sides. So absolutely. Anne: I like how you said you don't wanna attract the wrong client. Erikka: Yeah. Anne: And interestingly enough, I always hear about people talking about being low balled in a lot of the Facebook groups and they'll be like, oh, you know, they only offered me this or this is what they're offering. And I'm like, interestingly enough, I never quite meet clients like that. And I'm going to very humbly attribute it to a great web designer, my great web designer who shall remain nameless because they can't take on anymore clients and a great writer for the verbiage of which I worked many, many years myself on on trying to hone that and really working with someone to figure out who am I? Who do I want to be? How do I wanna be found online? And really working, not just a day on that. It has evolved over years of writing, rewriting and a lot of work. And it has been, I think one of the most successful things that I've ever done for my business that has garnered me, I'm gonna say, three quarters of my income was a great website with great verbiage that says exactly who I am, targets who I want to find me, and just gets me work without me having to go and cold call people or email people or whatever it is, just being found. And it's not just the website, but it's a website in combination with social media profiles. And also not just the words on the website, but I know we're specifically talking SEO, but the words in combination with the actual website that looks professional enough so that people, when they see it, they trust it, and they're willing to click and buy so to speak. Erikka: Yeah. One of the best compliments I got was somebody told me, oh, your website looks expensive. And I was like -- Anne: Yeah, right? Erikka: -- perfect! because I want clients that, that know they're not going to get a $50 voiceover from me. Anne: And that's it. And then I guess that was the long story of me getting back to your point about you don't wanna attract the wrong client. If somebody comes to me, they're not gonna offer me $.08 a word. You know what I mean? For e-learning. I'm not even attracting that type of client. I'm attracting the type of client that is going to be willing to pay. And funny enough, I was like, and now of course I'm gonna have another one of those moments, but I said something to my husband, I said yesterday, I don't even care what it costs, but I am hunting for this product because I want it to be the right product. And I want it to be quality product, and I'm willing to pay for it. And that I think is something so important for us as business owners and entrepreneurs that we understand that. I shop online all the time. I love online shopping. I think it's the best thing since sliced bread personally. Erikka: Absolutely. Yeah. And I mean, think about how it is when, when you guys are shopping, when -- there are times when you're more budget driven, when you're like, all right, what can I get what I need for the lowest price? And there are times like you just said, Anne, you know, when you're like, look, I don't care what it costs, but I need a certain level of quality. Anne: Yeah. I need this. I'm just gonna particular brand or yep. Erikka: Yep. And that's what you want your brand, your website, your digital storefront to say about you. Anne: Yep. You wanna be the Kleenex. Erikka: Yes. There you go. The Puffs Plus with lotion Anne: I need the Anne Ganguzza of voiceover. And also I wanna just mention that everybody should always have their name associated with their business, AnneGanguzza.com. And I tell people, I want you to be the Kleenex of voiceover. I need that Anne Ganguzza. Oh, I'm sorry. I need an Anne Ganguzza, you know, that kind of thing. I need an Erikka J . Really, that is important. And there's so many people that come up with these clever little names for their URLs and I'm like, well, that's great, but also have your name. Right? Erikka: Well, use them and, and I guess this is sort of a little, it's still kind of related to SEO in a way, but you can do that and use redirects. That's one thing I do a lot because people frequently forget that I have two K's in my name or where they wanna put two RS or whatever. So I have had other things like EJ Voiceover that are easier to find, but it still redirects you to ErikkaJ.com. Anne: Absolutely. Erikka: So you can still do those little clever names that get people's attention and have it tell them what your name is when they get there. Anne: Unless you have somebody else out there with another name that might be, I don't know, somebody undesirable that you may not wanna be found for. Then I say, add the word, voice or voiceover afterwards, you know, Anne Ganguzza Voiceover. Everybody's like, well, Anne Ganguzza, isn't that difficult to spell? I'm like, well, I'm a Kleenex. So -- Erikka: Teach them. Anne: And like, Erikka J, I will tell you, Erikka, I learned right away because you're somebody I wanted to know. I knew I wanted to be in contact. I immediately remembered the two Ks and not two RS. Erikka: Aww. Thank you. Anne: But it's true. Right? So I just now know -- Erikka: It's true. Anne: And I think that any client, right, that wants you, they learn it and that's it. And you stay in their brains and that is what makes you unique. And I love your last name. It's so like Ganguzza... Anne: Thank you. It is a cool name. Isn't it? It's one of the reasons why I took it Erikka: Right, right, right, right, right. You're like, honey, this is a business decision. Anne: Well, it kind of was. My name before was Lucy, and that was also a cool name. So I just thought Anne Ganguzza was a cool sounding name, but Anne Lucy was always also really a cool name 'cause people sometimes would call me Lucy instead of Anne. But when I first started, I picked a URL and I said, Annespeaks.com. And I thought it was so clever. And the funny thing is, is that nobody searched for Anne -- like, what is an Anne speaks? Is that like a noun? What is that? I mean, you would like it to be, but in the beginning it did not serve me well, even though I thought I was so clever. Erikka: That's memorable, you know? Yeah. But like Anne Ganguzza, how can you forget that? Anne: That's right. And if you want Anne Ganguzza, you'll know how to spell that name. Erikka: That's right. That's right. Anne: That's the point. You'll find it. That's the point. So don't worry BOSSes out there. If you have a name that's difficult to spell, I always say, get that name and then get redirects. Like things that are easier, like your first name voiceover.com or whatever. But that again is part of the SEO as well. Not just the words that you have on your website, but also in your URL. Erikka: Yes. Anne: So if they are words that people typically search for that you wanna be found, you can also include those in your URL. And it's not expensive these days -- Erikka: Not at all, not at all. Anne: -- to get additional URLs, to buy additional domain names. And then let's see, I have about 11 websites, Erikka. How many do you have? Erikka: Oh man. Err... More than 10. Anne: There you go. There you go. So the thing is, is I think for people who have been in the business and have a little bit of at least knowledge about SEO and understand the, the advantages and the benefits, you can create what you mentioned before, those redirects, that go to your website. So I also happen to have the eLearningvoice.com, medical-narration.com, phone-voice.com and all of these other genre based website domains. And they have, again, more words on the page that discuss who I am. Right? What my business does, my voiceover for explainers or voiceovers for telephony, voiceovers for -- and that also contributes to my overall SEO in the world of online searching. And so I pay for those websites. I pay for the maintenance of those websites. And so it is an investment, guys. But I, I think if anybody has a problem finding me online, they maybe don't know how to type it properly because -- Erikka: Well, I mean, that's what it's all about is being easy to be found. So what can you do to make it easy for people to find you? Because the internet is vast . I mean, it is so big So what are you gonna do to help people filter through the noise to find you? Anne: Google yourself. Erikka: Oh my goodness, yes. In an incognito window, which means that it's not looking at your cookies or anything like that or any, it's not seeing it through the lens of anything else you've searched. If you use Chrome or whatever browser, but you should see like in, I know in Chrome, in the upper right corner, there's like three dots. And if you click that, it'll say new incognito window and it'll be like dark. That means that you're in like, almost like a brand new browser and -- Anne: it's a dark window. Erikka: -- if you Google -- it's the dark web. Anne: You Google yourself in the dark window, on the dark web. Erikka: Google yourself. And then you will see how you are coming up from the dark web. No. Anne: But that's so important. Erikka: Seriously. Yeah. It's is. It is. Anne: That is so important. Erikka: You'll be shocked. Anne: And I say, Google yourself regularly, because you don't wanna be found for things that maybe you don't wanna be found for. Erikka: Right. Or old things, you know, like -- Anne: Exactly. I love that. You said old things because that's so important that we make sure that you clean up, make sure you clean up online. If you can. It's really difficult sometimes to completely clean up things that have been said. And that again, could be another podcast episode. If you've said things online, your social posts show up online as well. Erikka: Yes, they do. Anne: They do.   Erikka: I've definitely seen Twitter posts come up in a Google search for me. And I was like, oh, okay. Anne: So if you searched your name, right, Anne Ganguzza, I think the first thing, if it's properly done, that should come up is your website. Erikka: Should be, yes. Anne: Right? Erikka: Absolutely. Anne: And if you have multiple pages on your website, which I think is a good thing, and Erikka, I believe that you agreed with me, you'll see like you're about section, you'll see whatever that might be about, demos, those types of things, whatever sections, they should also show up. And then I think the next thing might be either YouTube or LinkedIn or whatever your social media social profiles are. I think YouTube possibly is the next one that come up. Erikka: It depends on the one you're most active in, honestly. Anne: Yeah. Erikka: If you're not super active on YouTube, like me, like I haven't posted anything with there in a while, bad Erikka but yeah. Anne: Yeah. So the next thing for me is YouTube. 'Cause I've been doing a little blurb on YouTube trying to yeah -- and again, that's another thing that I've been doing to try to increase my SEO is I've been putting out weekly videos. And so not only for VO BOSS, do I put out weekly videos, but for Anne Ganguzza I do. So for each brand I'm putting out well VO Peeps, I mean I'm only one person, but as most people know, I have a team of people that help me. I have been putting my own videos out on Anne Ganguzza to try to increase the Anne Ganguzza brand and VO BOSS, we do all of our episodes weekly. We put that on YouTube as well, just to contribute to the SEO. And as a matter of fact, we also transcribe our episodes as well to help any possible type of SEO. So if you were to search or if you listen to any of the episodes on, let's say Apple Podcasts or Spotify, you'll see that the transcripts are there as well. Erikka: Yeah. And I think, I think LinkedIn is another one that comes up heavy for me because it is one of the largest -- Anne: Yes, me too. Erikka: -- social media platforms in the world. And a lot of people sleep on LinkedIn. I know in our community we talk about it more, but seriously it's like, 'cause you know, it's like it's Facebook in a suit. You know, people say that, but -- Anne: It is Facebook in a suit. Erikka: But just about everybody's there. So -- Anne: Everybody's on it. Yes, absolutely. And you're right. And now there's the feed. And so I'm posting daily to that, and I'm trying to post content that matters. So another thing that can help you with SEO is to publish content and update it regularly or new content. And so I also blog on a weekly basis, and one of my blogs every week is my video that I've put on YouTube, which I've then transcribed, which then becomes a blog of mine. And then I also write a blog every other week. So that again are words that come back to my website so that again, people can find me easily. Erikka: Yeah. Another thing I did fairly recently, which I probably need to do some maintenance work on, but I'd created a business on Google business. Anne: Oh yes. Good idea. Erikka: Which is easy to do. And then that way you could actually get people to write reviews for you too. So yeah. You can come up there and show up as a business. So. Anne: That's the other thing, when you do a Google search on yourself, that should show up. That and Yelp always showed up pretty high up. But I think lately they've not been coming up as high up in the search. Erikka: I haven't seen Yelp as high lately, but -- Anne: Yeah. You know, well, there's so many issues with Yelp, I think with people sabotaging other businesses by writing bad reviews and that sort of thing, which was a real thing. Erikka: Yeah. I mean, SEO's kind of like credit scores, right? Like you said, the algorithm changes all the time. You get the most information that you can to try to optimize, but you're not gonna master it because it's proprietary to those companies, and they put a lot of money into keeping them very secret and specialized. Just do the best you can. Anne: So consider, you know, I'm thinking for the future, it's gonna be something I've been looking at too. I mean, if you're not advertising already, think about that. Because it's becoming more and more prevalent out there, but for sure, understand who you are, define who you are as a business, figure out what keywords you want to be found for, make sure that they appear in your websites, make sure they appear in your social media profiles and try to just Google yourself every week or so. And longevity by the way, has something to do with it. So make sure that you are Googling yourself every week, every other week, and you too can win at the SEO game, and it's not that complicated. Erikka: It's not. And bringing it back to our balance theme, you know, it's like we do things actively to get these leads and to get these jobs every day, like auditions or you know, some people on P2Ps or doing your direct marketing. SEO is something that you can do passively so that work just walks in the door. Anne: There you go. I love it. Wow. I could talk another half an hour on this at least. Erikka: I could. I think we both talk a lot, Anne because we get paid for it. Anne: Ah, there we go. Yeah. Well BOSSes, you can use your voice to make an immediate difference and give back to the communities that give to you. Visit 100voiceswhocare.org to find out more. You can absolutely make a difference for a small, quarterly contribution. And a great big shout-out to our sponsor. ipDTL. You too can network and communicate like BOSSes like Erikka J and I, and find out more at ipdtl.com. You guys, have an amazing, and we'll see you next week. Bye! Erikka: Bye! >> Join us next week for another edition of VO BOSS with your host Anne Ganguzza. And take your business to the next level. Sign up for our mailing list at voboss.com and receive exclusive content, industry revolutionizing tips and strategies, and new ways to rock your business like a BOSS. Redistribution with permission. Coast to coast connectivity via ipDTL.

#StoriesByScrimba Podcast
Take a Chance, Even If Things Sound Weird and You Don't Feel Ready: How Wemerson Learned to Code and Landed a Dream Job in a Web3 Startup

#StoriesByScrimba Podcast

Play Episode Listen Later Jul 26, 2022 30:24


The Bike Shed
347: Tracking Velocity

The Bike Shed

Play Episode Listen Later Jul 26, 2022 38:50


Chris talks about a small toy app he maintains on the side and working with a project called capybara_table. Steph is getting ready for maternity leave and wonders how you track velocity and know if you're working quickly enough? They answer a listener's question about where to get started testing a legacy app. This episode is brought to you by Airbrake (https://airbrake.io/?utm_campaign=Q3_2022%3A%20Bike%20Shed%20Podcast%20Ad&utm_source=Bike%20Shed&utm_medium=website). Visit Frictionless error monitoring and performance insight for your app stack. jnicklas/capybara_table: (https://github.com/jnicklas/capybara_table) Capybara selectors and matchers for working with HTML tables Become a Sponsor (https://thoughtbot.com/sponsorship) of The Bike Shed! Transcript: CHRIS: Just gotta hold on. Fly this thing straight to the crash site. STEPH: Hello and welcome to another episode of The Bike Shed, a weekly podcast from your friends at thoughtbot about developing great software. I'm Chris Toomey. CHRIS: And I'm Steph Viccari. STEPH: And together, we're here to share a bit of what we've learned along the way. I love that you rolled with that. [laughs] CHRIS: No, actually, it was the only thing I could do. I [laughs] was frozen into action is a weird way to describe it, but there we are. STEPH: I mentioned to you a while back that I've always wanted to do that. Today was the day. It happened. CHRIS: Today was the day. It wasn't even that long ago that you told me. I feel like you could have waited another week or two. I feel like maybe I was too prepared. But yeah, for anyone listening, you may be surprised to find out that I am not, in fact, Steph Viccari. STEPH: And they'll be surprised to find out that I actually am Chris Toomey. This is just a solo monologue. And you've done a great job of two voices [laughs] this whole time and been tricking everybody. CHRIS: It has been a struggle. But I'm glad to now get the proper recognition for the fact that I have actually [laughs] been both sides of this thing the whole time. STEPH: It's been a very impressive talent in how you've run both sides of the conversation. Well, on that note, [laughs] switching gears just a bit, what's new in your world? CHRIS: What's new in my world? Answering now as Chris Toomey. Let's see; I got two small updates, one a very positive update, one a less positive update. As is the correct order, I'm going to lead with the less positive thing. So I have a small toy app that I maintain on the side. I used to have a bunch of these little purpose-built singular apps, typically Rails app sort of things where I would play with a new technology, but it was some sort of like, oh, it's a tracker. It's a counter. We talked about breakable toys in the past. These were those, for me, serve different purposes, productivity things, or whatever. But at some point, I was like, this is too much work, so I consolidated them all. And I kept like, there was a handful of features that I liked, smashed them all together into one Rails app that I maintain. And that's just like my Rails app. It turns out it's useful to be able to program the internet. So I was like, cool, I'll do that for myself. I have this little app that I maintain. It's got like a journal in it and other things. I think I've talked about the journal in the past. But I don't actually take that good care of it. I haven't added any features in a while. It mostly just does what it's supposed to, but it had...entropy had gotten the better of it. And so, I had a very small feature that I wanted to add. It was actually just a Rake task that should run in the background on a schedule. And if something is out of order, then it should send me an email. Basically, just an update of like, you need to do something. It seemed like such a simple task. And then, oh goodness, the failure modes that I fell into. First, I was on Heroku-18. Heroku is currently on their Heroku-22 stack. 18 being the year, so it was like 2018, and then there's a 2020 stack, and then the 2022. That's the current one. So I was two stacks behind, and they were yelling at me about that. So I was like, okay, but whatever. Can I ignore that for a little while? Turns out no, because I couldn't even get the app to boot locally, something about some gems or some I think Webpacker was broken locally. So I was trying to fix things, finally got that to work. But then I couldn't get it to build on CircleCI because Node needed Python, Python 2 specifically, not Python 3, in order to build Node dependencies, particularly LibSass, I want to say, or node-sass. So node-sass needed Python 2, which I believe is end of life-d, to build a CSS authoring tool. And I kind of took a step back at that moment, and I was like, what did we do, everybody? What is going on here? And thankfully, I feel like there was more sort of unification of tools and simplification of the build tool space and whatnot. But I patched it, and I fixed some things, then finally I got it working. But then Memcache wasn't working, and I had to de-provision that and reprovision something. The amount of little...like, each thing that I fixed broke something else. I was like, the only thing I can do at this point is just burn the entire app down and rebuild it. Thankfully, I found a working version of things. But I think at some point, I've got to roll up my sleeves some weekend and do the full Rails, Ruby, everything upgrade, just get back to fresh. But my goodness, it was rough. STEPH: I feel like this is one of those reasons where we've talked in the past about you want to do something, and you keep putting it off. And it's like, if I had just sat down and done it, I could have knocked it out. Like, oh, it only took me like 5-10 minutes. But then there's this where you get excited, and then you want to dive in. And then suddenly, you do spend an hour or however long, and you're just focused on trying to get to the point where you can break ground and start building. I think that's the resistance that we're often fighting when we think about, oh, I'm going to keep delaying this because I don't know how long it's going to take. CHRIS: There's something that I see in certain programming communities, which is sort of a beginner-friendliness or a beginner's mindset or a welcomingness to beginners. I see it, particularly in the Svelte world, where they have a strong focus on being able to pick something up and run with it immediately. The entire tutorial is built as there's the tutorial on the one side, like the text, and then on the right side is an interactive REPL. And you're just playing with the Svelte REPL and poking around. And it's so tangible and immediate. And they're working on a similar thing now for SvelteKit, which is the meta-framework that does server-side rendering and all the fancy stuff. But I love the idea that that is so core to how the Svelte community works. And I'll be honest that other times, I've looked at it, and I've been like, I don't care as much about the first run experience; I care much more about the long-term maintainability of something. But it turns out that I think those two are more coupled than I had initially...like, how easy is it for a beginner to get started is closely related to or is, you know, the flip side of how easy is it for me to maintain that over time, to find the documentation, to not have a weird builder that no one else has ever seen. There's that wonderful XKCD where it's like, what's the saddest thing on the internet? Seeing the question that you have asked by one other person on Stack Overflow and no answers four years ago. It's like, yeah, that's painful. You actually want to be part of the boring, mundane, everybody's getting the same errors, and we have solutions to them. So I really appreciate when frameworks and communities care a lot about both that first run experience but also the maintainability, the error messages, the how okay is it for this system to segfault? Because it turns out segfaults prints some funny characters to your terminal. And so, like the range from human-friendly error message all the way through to binary character dump, I'm interested in folks that care about that space. But yeah, so that's just a bit of griping. I got through it. I made things work. I appreciate, again, the efforts that people are putting in to make that sad situation that I experienced not as common. But to highlight something that's really great and wonderful that I've been working with, there is a project called capybaratable. capybaratable is the gem name. And it is just this delightful little set of matchers that you can use within a Capybara, particularly within feature spec. So if you have a table, you can now make an assertion that's like, expect the table to have table row. And then you can basically pass it a hash of the column name and the value, but you can pass it any of the columns that you want. And you can pass it...basically, it reads exactly like the user would read it. And then, if there's an error, if it actually doesn't find it, if it misses the assertion, it will actually print out a little ASCII table for you, which is so nice. It's like, here's the table row that I saw. It didn't have what you were looking for, friend, sorry about that. And it's just so expressive. It forces accessibility because it basically looks at the semantic structure of a table. And if your table is not properly semantically structured, if you're not using TDs and TRs, and all that kind of stuff, then it will not find it. And so it's another one of those cases where testing can be a really useful constraint from the usability and accessibility of your application. And so, just in every way, I found this project works so well. Error messages are great. It forces you into a better way of building applications. It is just a wonderful little tool that I found. STEPH: That's awesome. I've definitely seen other thoughtboters when working in codebases that then they'll add really nice helper methods around that for like checking does this data exist in the table? And so I'm used to seeing that type of approach or taking that type of approach myself. But the ASCII table printout is lovely. That's so...yeah, that's just a nice cherry on top. I will have to lock that one away and use that in the future. CHRIS: Yeah, really, just such a delightful thing. And again, in contrast to the troubles of my weekend, it was very nice to have this one tool that was just like, oh, here's an error, and it's so easy to follow, and yeah. So it's good that there are good things in the world. But speaking of good things, what's new in your world? I hope good things. And I hope you're not about to be like, everything's terrible. But what's up with you? [laughter] STEPH: Everything's on fire. No, I do have some good things. So the good thing is that I'm preparing for...I have maternity leave that's coming up. So I am going to take maternity leave in about four-ish weeks. I know the date, but I'm saying the ish because I don't know when people are listening. [laughs] So I'm taking maternity leave coming up soon. I'm very excited, a little panicked mostly about baby preparedness, because, oh my goodness, it is such an overwhelming world, and what everyone thinks you should or shouldn't have and things that you need to do. So I've been ramping up heavily in that area. And then also planning for when I'm gone and then what that's going to look like for the team, and for clients, and for making sure I've got work wrapped up nicely. So that's a big project. It's just something that's on my mind, something that I am working through and making plans for. On the weird side, I ran into something because I'm still in test migration world. That is one of like, this is my mountain. This is my Everest. I am determined to get all of these tests. Thank you to everyone who has listened to me, especially you, listen to me talk about this test migration path I've been on and the journey that it's been. This is the goal that I have in mind that I really want to get done. CHRIS: I know that when you said, "Especially you," you were talking to me, Chris Toomey. But I want to imagine that every listener out there is just like, aww, you're welcome, Steph. So I'm going to pretend for my own sake that that's what you meant by, especially you. It's especially every one of you out there in the audience. STEPH: Yes, I love either version. And good point, because you're right, I'm looking at you. So I can say especially you since you've been on this journey with me, but everybody listening has been on this journey with me. So I've got a number of files left that I'm working through. And one of the funky things that I ran into, well, it's really not funky; it was a little bit more of an educational rabbit hole for me because it's something that I hadn't considered. So migrating over a controller test over from Test::Unit to then RSpec, there are a number of controller tests that issue requests or they call the same controller method multiple times. And at first, I didn't think too much about it. I was like, okay, well, I'm just going to move this over to RSpec, and everything is going to be fine. But based on the way a lot of the information is getting set around logging in a user and then performing an action, and then trying to log in a different user, and then perform another action that was causing mayhem. Because then the second user was never getting logged in because the first user wasn't getting logged out. And it was causing enough problems that Joël and I both sat back, and we're like, this should really be a request back because that way, we're going through the full Rails routing. We're going through more of the sessions that get set, and then we can emulate that full request and response cycle. And that was something that I just hadn't, I guess, I hadn't done before. I've never written a controller spec where then I was making multiple calls. And so it took a little while for me to realize, like, oh, yeah, controller specs are really just unit test. And they're not going to emulate, give us the full lifecycle that a request spec does. And it's something that I've always known, but I've never actually felt that pain point to then push me over to like, hey, move this to a request spec. So that was kind of a nice reminder to go through to be like, this is why we have controller specs. You can unit test a specific action; it is just hitting that controller method. And then, if you want to do something that simulates more of a user flow, then go ahead and move over to the request spec land. CHRIS: I don't know what the current status is, but am I remembering correctly that the controller specs aren't really a thing anymore and that you're supposed to just use request specs? And then there's features specs. I feel like I'm conflating...there's like controller requests and feature, but feature maybe doesn't...no, system, that's what I'm thinking of. So request specs, I think, are supposed to be the way that you do controller-like things anymore. And the true controller spec unit level thing doesn't exist anymore. It can still be done but isn't recommended or common. Does that sound true to you, or am I making stuff up? STEPH: No, that sounds true to me. So I think controller specs are something that you can still do and still access. But they are very much at that unit layer focus of a test versus request specs are now more encouraged. Request specs have also been around for a while, but they used to be incredibly slow. I think it was more around Rails 5 that then they received a big increase in performance. And so that's when RSpec and Rails were like, hey, we've improved request specs. They test more of the framework. So if you're going to test these actions, we recommend going for request specs, but controller specs are still there. I think for smaller things that you may want to test, like perhaps you want to test that an endpoint returns a particular status that shows that you're not authorized or forbidden, something that's very specific, I think I would still reach for a controller spec in that case. CHRIS: I feel like I have that slight inclination to the unit spec level thing. But I've been caught enough by different things. Like, there was a case where CSRF wasn't working. Like, we made some switch in the application, and suddenly CSRF was broken, and I was like, well, that's bad. And the request spec would have caught it, but the controller spec wouldn't. And there's lots of the middleware stack and all of the before actions. There is so much hidden complexity in there that I think I'm increasingly of the opinion, although I was definitely resistant to it at first, but like, yeah, maybe just go the request spec route and just like, sure. And they'll be a little more costly, but I think it's worth that trade-off because it's the stuff that you're not thinking about that is probably the stuff that you're going to break. It's not the stuff that you're like, definitely, if true, then do that. Like, that's the easier stuff to get right. But it's the sneaky stuff that you want your tests to tell you when you did something wrong. And that's where they're going to sneak in. STEPH: I agree. And yeah, by going with the request specs, then you're really leaning into more of an integration test since you are testing more of that request/response lifecycle, and you're not as likely to get caught up on the sneaky stuff that you mentioned. So yeah, overall, it was just one of those nice reminders of I know I use request specs. I know there's a reason that I favor them. But it was one of those like; this is why we lean into request specs. And here's a really good use case of where something had been finagled to work as a controller test but really rightfully lived in more of an integration request spec. MIDROLL AD: Debugging errors can be a developer's worst nightmare...but it doesn't have to be. Airbrake is an award-winning error monitoring, performance, and deployment tracking tool created by developers for developers that can actually help you cut your debugging time in half. So why do developers love Airbrake? Well, it has all of the information that web developers need to monitor their application - including error management, performance insights, and deploy tracking! Airbrake's debugging tool catches all your project errors, intelligently groups them, and points you to the issue in the code so you can quickly fix the bug before customers are impacted. In addition to stellar error monitoring, Airbrake's lightweight APM enables developers to track the performance and availability of their application through metrics like HTTP requests, response times, error occurrences, and user satisfaction. Finally, Airbrake Deploy Tracking helps developers track trends, fix bad deploys, and improve code quality. Since 2008, Airbrake has been a staple in the Ruby community and has grown to cover all major programming languages. Airbrake seamlessly integrates with your favorite apps and includes modern features like single sign-on and SDK-based installation. From testing to production, Airbrake notifiers have your back. Your time is valuable, so why waste it combing through logs, waiting for user reports, or retrofitting other tools to monitor your application? You literally have nothing to lose. So head on over to airbrake.io/try/bikeshed to create your FREE developer account today! STEPH: Changing gears just a bit, I have something that I'd love to chat with you about. It came up while I was having a conversation with another thoughtboter as we were discussing how do you track velocity and know if you're working quickly enough? So since we often change projects about every six months, there's the question of how do I adapt to this team? Or maybe I'm still newish to thoughtbot or to a team; how do I know that I am producing the amount of work that the client or the team expects of me and then also still balancing that and making sure that I'm working at a sustainable pace? And I think that's such a wonderful, thoughtful question. And I have some initial thoughts around it as to how someone could track velocity. I also think there are two layers to this; there could be are we looking to track an individual's velocity, or are we looking to track team velocity? I think there are a couple of different ways to look at this question. But I'm curious, what are your thoughts around tracking velocity? CHRIS: Ooh, interesting. I have never found a formal method that worked in this space, no metric, no analysis, no tool, no technique that really could boil this down and tell a truth, a useful truth about, quote, unquote, "Velocity." I think the question of individual velocity is really interesting. There's the case of an individual who joins a team who's mostly working to try and support others on the team, so doing a lot of pairing, doing a lot of other things. And their individual velocity, the actual output of lines of code, let's say, is very low, but they are helping the overall team move faster. And so I think you'll see some of that. There was an episode a while back where we talked about heuristics of a team that's moving reasonably well. And I threw out the like; I don't know, like a pull request a day sort of thing feels like the only arbitrary number that I feel comfortable throwing out there in the world. And ideally, these pull requests are relatively small, individual deployable things. But any other version of it, like, are we thinking lines of code? That doesn't make sense. Is it tickets? Well, it depends on how you size your tickets. And I think it's really hard. And I think it does boil down to it's sort of a feeling. Do we feel like we're moving at a comfortable clip? Do I feel like I'm roughly keeping pace with the rest of the team, especially given seniority and who's been on the team longer? And all of those sorts of things. So I think it's incredibly difficult to ask about an individual. I have, I think, some more pointed thoughts around as a team how we would think about it and communicate about velocity. But I'm interested what came to mind for you when you thought about it, particularly for the individual side or for the team if you want to go in that direction. STEPH: Yeah, most of my initial thoughts were more around the individual because I think that's where this person was coming from because they were more interested in, like, how do I know that I'm producing as much as the team would expect of me? But I think there's also the really interesting element of tracking a team's velocity as well. For the individual, I think it depends a lot on that particular team and their goals and what pace they're moving at. So when I do join a new team, I will look around to see, okay, well, what's the cadence? What's the standard bar for when someone picks up a ticket and then is able to push it through? How much cruft are we working with in the codebase? Because then that will change the team's expectations of yes, we know that we have a lot of legacy code that we're working with, and so it does take us longer to get through things. And that is totally fine because we are looking more to optimize our sustainability and improving the code as we go versus just trying to get new features in. I think there's also an important cultural aspect. So some teams may, unfortunately, work a lot of extra hours. And that's something that I won't bend for. I'm still going to stick to my sustainable hours. But that's something that I keep in mind that just if some other people are working a lot of evenings or just working extra hours to keep that in mind that if they do have a higher velocity to not include that in my calculation as heavily. I also really liked how you highlighted that certain individuals often their velocity is unblocking others. So it's less about the specific code or features or tickets that they're producing, but it's how many people can they help? And then they're increasing the velocity of those individuals. And then the other metrics that unfortunately can be gamified, but it's still something to look at is like, how many hours are you spending on a particular feature, the tickets? But I like that phrasing that you used earlier of what's your progress? So if someone comes to daily sync and they mention that they're working on the same thing and we're on like day three, or four, but they haven't given an update around, like, oh, I have this new thing that I'm focused on, or this new area that I'm exploring, that's when I'll start to have alarm bells go off. And I'm like, okay, you've been working on the same thing. I can't quite tell if you've made progress. It sounds like you're still in the depths of the original thing that you were on a couple of days ago. So at that point, I'm going to want to check in to see how you're doing. But yeah, I think that's why this question fascinates me so much is because I don't think there's one answer that fits for everybody. There's not a way to tell one person to say, "Hey, this is your output that you should be producing, and this applies to all teams." It's really going to vary from team to team as to what that looks like. I remember there was one team that I joined that initially; I panicked because I noticed that their team was moving at a slower rate in terms of the number of tickets and PRs and stuff that were getting pushed up, reviewed, and then merged. That was moving at a slower pace than I was used to with previous clients. And I just thought, oh, what's going on? What's slowing us down? Like, why aren't we moving faster? And I actually realized it's just because they were working at a really sustainable pace. They showed up to the office. This was back in the day when I used to go to an office, and people showed up at like 9:00 a.m. and then 5:00 o'clock; it was a ghost town, and people were gone. So they were doing really solid, great work, but they were sticking to very sustainable hours. Versus, a previous team that I had been on had more of like a rushed feeling, and so there was more output for it. And that was a really nice reset for me to watch this team and see them do such great work in a sustainable fashion and be like, oh, yeah, not everything has to be a fire, not everything has to be rushed. I think the biggest thing that I'd look at is if velocity is being called into question, so if someone is concerned that someone's not producing enough or if the team is not producing enough, the first place I'm going to look is what's our priorities and see are we prioritizing correctly? Or are people getting pulled into a lot of work that's not supporting the priorities, and then that's why suddenly it feels like we're not producing at the level that we need to? I feel like that's the common disconnect between how much work we're getting done versus then what's actually causing people or product managers, or management stress. And so reevaluating to make sure that they're on the same page is where I would look first before then thinking, oh, someone's not working hard enough. CHRIS: Yeah, I definitely resonate with all of that. That was a mini masterclass that you just gave right there in all of those different facets. The one other thing that comes to mind for me is the question is often about velocity or speed or how fast can we go. But I increasingly am of the opinion that it's less about the actual speed. So it's less about like, if you think about it in terms of the average pace, the average number of features that we're going through, I'm more interested in the standard deviation. So some days you pick up a ticket, and it takes you a day; some days you pick up a ticket, and suddenly, seven days later, you're still working on it. And both at the individual level and at the team level, I'm really interested in decreasing that standard deviation and making it so that we are more consistently delivering whatever amount of output it is but very consistently doing that. And that really helps with our ability to estimate overall bodies of work with our ability for others to know and for us to be able to sort of uphold expectations. Versus if randomly someone might pick up a piece of code or might pick up a ticket that happens to hit a landmine in the code, it's like, yeah, we've been meaning to refactor that for a while. And it turns out that thing that you thought would be super easy is really hard because we've been kicking the can on this refactoring of the fundamental data model. Sorry about that. But today's your day; you lose. Those are the sort of things that I see can be really problematic. And then similarly, on an individual side, maybe there's some stuff that you can work on that is super easy for you. But then there's other stuff that you kind of hit a wall. And I think the dangerous mode to get into is just going internal and not really communicating about that, and struggling and trying to get there on your own rather than asking for help. And it can be very difficult to ask for help in those sorts of situations. But ideally, if you're focusing on I want to be delivering in that same pace, you probably might need some help in that situation. And I think having a team that really...what you're talking about of like, if I notice someone saying the same thing at daily sync for a couple of days in a row, I will typically reach out in a very friendly, collegial way, hey, do you want someone else to take a look at that with you? Because ideally, we want to unblock those situations. And then if we do have a team that is pretty consistently delivering whatever overall velocity but it's very consistent at that velocity, it's not like 3 one day and then 0, and then 12, and then 2; it's more of like, 6,5,6,5 sort of thing, to pick random numbers out of the air, then I feel so much more able to grow that, to increase that. If the question comes to me of like, hey, we're looking at the budget for the next quarter; do we think we want to hire another developer? I think I can answer that much more accurately at that point and say what do I think that additional individual would be able to do on the team. Versus if development is kind of this sporadic thing all over the place, then it's so much harder to understand what someone new joining that team would be able to do. So it's really the slow is smooth, smooth is fast adage that I've talked about in the past that really captured my mind a while back that just continues to feel true to me. And then yeah, I can work with that so much better than occasional days of wild productivity and then weeks of sadness in the swamp of refactoring. So it's a different way to think about the question, but it is where my mind initially went when I read this question. STEPH: I'm going to start using that description for when I'm refactoring. I'm in the refactoring swamp. That's where I'm spending my time. [laughs] Talking about this particular question is helping me realize that I do think less in terms of like what is my output in the strict terms of tickets, and PRs, and things like that. But I do think more about my progress and how can I constantly show progress, not just to the world but show it to myself. So if there are tickets that then maybe the ticket was scoped too big at first and I've definitely made some really solid progress, maybe I'm able to ship something or at least identified some other work that could be broken out, then I'm going to do that. Because then I want everybody to know, like, hey, this is the progress that was made here. And I may even be able to make myself feel good and move something over to the done column. So there's that aspect of the work that I focus on more heavily. And I feel like that also gives us more opportunities to then iterate on what's the goal? Like, we're not looking to just churn out work. That's not the point. But we really want to focus on meaningful work to get done. So if we're constantly giving an update on this as the progress that I've made in this direction, that gives people more opportunities to then respond to that progress and say, "Oh, actually, I think the work was supposed to do this," or "I have questions about some of the things that you've uncovered." So it's less about just getting something done. But it's still about making sure that we're working on the right thing. CHRIS: Yeah, it doesn't matter how fast we're going if we're going in the wrong direction, so another critical aspect. You can be that person on the team who actually doesn't ship much code at all. Just make sure that we don't ship the wrong code, and you will be a critical member of that team. But shifting gears just a little bit, we have another listener question here that I'd love to get into. This one is about testing a legacy app. So reading this question, it starts off with a very nice note to us, Steph. "I want to start by saying thanks for putting out great content week after week." We are very happy to do so." So a question for you two. I just took over a legacy Rails app. It's about 12 years old, and it's a bit of a mess. There was some testing in place, but it was completely broken and hadn't been touched in over seven years. So I decided to just delete it all. My question is, where do I even start with testing? There are so many callbacks on the models and so many controller hooks that I feel like I somehow need to have a factory for every model in our repo. I need to get testing in place ASAP because that is how I develop. But we are also still on Ruby 2 and Rails 4.0. So we desperately have to upgrade. Thanks in advance for any advice." So Steph, I actually replied in an email to this kind listener who sent this. And so, I definitely have some thoughts, but I'm interested in where would you start with this. STEPH: Legacy code, I wouldn't know anything about working in legacy code. [laughs] This is a fabulous question. And yeah, the response that you provided is incredible. So I'm very excited for you to share the message that you replied with. So I'm going to try not to steal any of those because they're wonderful. But to add to that list that is soon to come, often where I start with applications like these where I need some testing in place because, as this person mentioned, that's how they work. And then also, at that point, you're just scared to ship anything because you just don't know what's going to break. So one area that you could start with is what's your rollback strategy? So if you don't have any tests in place and you send something out into the world, then what's your plan to then be able to either roll back to a safe point or perhaps it's using feature flags for anything new that you're adding so that way you can quickly turn something on and off. But having a strategy there, I think, will help alleviate some of that stress of I need to immediately add tests. It's like, yes, that's wonderful, but that's going to take time. So until you can actually write those tests, then let's figure out a plan to mitigate some of that pain. So that's where I would initially start. And then, as for adding the test, typically, you start with testing as you go. So I would add tests for the code that I'm adding that I'm working on because that's where I'm going to have the most context. And I'm going to start very high. So I might have really slow tests that test everything that is going to be feature level, integration level specs because I'm at the point that I'm just trying to document the most crucial user flows. And then once I have some of those in place, then even if they are slow, at least I'm like, okay, I know that the most crucial user flows are protected and are still working with this change that I'm making. And in a recent episode, we were talking about how to get to know a Rails app. You highlighted a really good way to get to know those crucial user flows or the most common user flows by using something like New Relic and then seeing what are the paths that people are using. Maybe there's a product manager or just someone that you're taking the app over that could also give you some help in letting you know what's the most crucial features that users are relying on day to day and then prioritizing writing tests for those particular flows. So then, at this point, you've got a rollback strategy. And then you've also highlighted what are your most crucial user flows, and then you've added some really high level probably slow tests. Something that I've also done in the past and seen others do at thoughtbot when working on a legacy project or just working on a project, it wasn't even legacy, but it just didn't have any test coverage because the team that had built it before hadn't added test coverage. We would often duplicate a lot of the tests as well. So you would have some integration tests that, yes, frankly, were very similar to others, which felt like a bad choice. But there was just some slight variation where a user-provided some different input or clicked on some small different field or something else happened. But we found that it was better to have that duplication in the test coverage with those small variations versus spending too much time in finessing those tests. Because then we could always go back and start to improve those tests as we went. So it really depends. Are you in fire mode, and maybe you need to duplicate some stuff? Or are you in a state where you can be more considerate with your tests, and you don't need to just get something in place right away? Those are some of the initial thoughts I have. I'm very excited for the thoughts that you're about to share. So I'm going to turn it over to you. CHRIS: It's sneaky in this case. You have advanced notice of what I'm about to say. But yeah, this is a super interesting topic and one of those scary places to find yourself in. Very similar to you, the first thing that I recommended was feature specs, starting at that very high level, particularly as the listener wrote in and saying there are a lot of model callbacks and controller callbacks. And before filters and all of this, it's very indirect how this application works. And so, really, it's only when the whole thing is integrated together that you're going to have a reasonable sense of what's going on. And so trying to write those high-level feature specs, having a handful of them that give you some confidence when you're deploying that those core workflows are still working as expected. Beyond that, the other things that I talked about one was observability. As an aside, I didn't mention feature flags or anything like that. And I really loved that that was something you highlighted as a different way to get to confidence, so both feature flags and rollbacks. Testing at the end of the day, the goal is to have confidence that we're deploying software that works, and a different way to get that is feature flags and rollbacks. So I really love that you highlighted that. Something that goes really well hand in hand with those is observability. This has been a thing that I've been exploring more and more and just having some tooling that at runtime will tell you if your application is behaving as expected or is not. So these can be APM-type tools, but it can also be things like Sentry or Honeybadger error monitoring, those sorts of things. And in a system like this, I wouldn't be surprised if maybe there was an existing error monitoring tool, but it had just kind of decayed over time and now just has perhaps thousands of different entries in it that have been ignored and whatnot. On more than one occasion, I've declared Sentry bankruptcy working with clients and just saying like, listen; this thing can't tell us any truths anymore. So let's burn it down and restart it. So I would recommend that and having that as a tool such that much as tests are really wonderful before the code gets out there into the wild; it turns out it's only when users start using it that the real stuff happens. And so, having observability, having tooling in place that will tell you when something breaks is equally critical in my mind. One of the other things I said, and this is probably the spiciest take on my list, is questioning the trade-off space that you're in. Is this an application that actually has a relatively low defect rate that users use and are quite happy with, and expect that level of performance and correctness, and all of those sorts of things, and so you, frankly, need to be careful with it? Or, is it potentially something that has a handful of bugs and that users are used to a certain lower fidelity experience, let's call it? And can you take advantage of that if that happens to be true? Like, I would be very careful to break something that has never been broken before that there's no expectation of that. But if we can get away with moving fast and breaking things for a little while just to try and get ourselves out of the spot that we're in, I would at least want to consider that trade-off space. Because caution slows you down, it means that your progress is going to be limited. And so, if we're able to reduce the caution filter just a little bit and move a little bit more rapidly, then ideally, we can get out of this place that we're in a little more quickly. Again, I think that's a really subtle one and one that you'd have to get buy-in from product managers and probably be very explicit in the conversations and sort of that trade-off space. But it is something that I would want to explore if I found myself in this sort of situation. The last thing that I highlighted was the fact that the versions of Ruby and Rails that were listed in the question are, I think, both end of life at this point. And so from a security perspective, that is just a giant glaring warning sign in the corner because the day that your app gets hacked, well, that's a bad day. So testing, unfortunately, I think that's the main way that you're going to get by on that as you're going through upgrades. You can deploy a new version of the application and see what happens and see if your observability can get you there. But really, testing is what you want to do. So that's where building out that testing is all the more critical so that you can perform those security upgrades because they are now truly critical to get done. And so it gives sort of more than a nice to have, more than this makes me feel comfortable. It is pretty much a necessity if you want to go through that, and you absolutely need to go through the security upgrades because otherwise, you're going to get hacked. There are just automated scanners out there. They're going to find you. You don't need to be a high vulnerability target to get taken down on the internet these days. So if it hasn't happened yet, it's going to. And I think that's an easy business case to sell is, I guess, the way that I would frame it. So those were some of my thoughts. STEPH: You bring up a really good point about needing to focus on the security upgrades. And I'm thinking that through a little bit further in regards to what trade-offs would I make? Would I wait till I have tests in place to then start the upgrades, or would I start the upgrades now but just know I'm going to spend more time manual testing on staging? Or maybe I'm solo on the project. If I have a product manager or someone else that can also help the testing with me, I think I would go for that latter approach where I would start the upgrades today and then just do more manual testing of those crucial flows and then have that rollback strategy. And as you mentioned, it's a trade-off in terms of, like, how important is it that we don't break anything? CHRIS: I think similar to the thing that both of us hit on early on is like, have some feature specs that just kick the whole application as one connected piece of code. Have that in place for the security upgrade, testing. But I agree, I wouldn't want to hold off on that because I think that's probably the scariest part of all of this. But yeah, it is, again, trade-offs. As always, it depends. But I think those are my thoughts. Anything else you want to add, Steph? STEPH: I think those are fabulous thoughts. I think you covered it all. CHRIS: Sounds good. Well, in that case, should we wrap up? STEPH: Let's wrap up. CHRIS: The show notes for this episode can be found at bikeshed.fm. STEPH: This show is produced and edited by Mandy Moore. CHRIS: If you enjoyed listening, one really easy way to support the show is to leave us a quick rating or even a review on iTunes, as it really helps other folks find the show. STEPH: If you have any feedback for this or any of our other episodes, you can reach us at @_bikeshed or reach me on Twitter @SViccari. CHRIS: And I'm @christoomey. STEPH: Or you can reach us at hosts@bikeshed.fm via email. CHRIS: Thanks so much for listening to The Bike Shed, and we'll see you next week. ALL: Byeeeeeeeee!!!!!!!! ANNOUNCER: This podcast was brought to you by thoughtbot. thoughtbot is your expert design and development partner. Let's make your product and team a success.

MacCast (Enhanced) - For Mac Geeks, by Mac Geeks
Maccast 2022.07.24

MacCast (Enhanced) - For Mac Geeks, by Mac Geeks

Play Episode Listen Later Jul 25, 2022 42:28 Very Popular


An enhanced podcast about all things Macintosh. For Mac geeks, by Mac geeks. Episode 838. Apple removing titles from Apple Arcade. Apple plans for slowdowns. iPhone 14 suppliers experiencing shortages. "Scratchgate?" Stop, just stop.. Apple TV+ picks up 'Causeway'. A new look for Apple Watch? Maccast "Bat Signal" [Get Shortcut]. Shared Photo Albums. Different 'types' of memory. Special thanks to our sponsor: SimpliSafe Shownotes in: HTML or OPML Subscribe to the Podcast Feed or Get the MP3

Merge Conflict
316: Hosting Websites & Web Apps for Free

Merge Conflict

Play Episode Listen Later Jul 25, 2022 36:05


After a quick update on Frank's drone, we dive into the world of static web apps, websites, and pages that are completely free to host on different platforms. Follow Us Frank: Twitter, Blog, GitHub James: Twitter, Blog, GitHub Merge Conflict: Twitter, Facebook, Website, Chat on Discord Music : Amethyst Seer - Citrine by Adventureface ⭐⭐ Review Us (https://itunes.apple.com/us/podcast/merge-conflict/id1133064277?mt=2&ls=1) ⭐⭐ Machine transcription available on http://mergeconflict.fm

soundbite.fm: a podcast network
Merge Conflict: 316: Hosting Websites & Web Apps for Free

soundbite.fm: a podcast network

Play Episode Listen Later Jul 25, 2022 36:05


After a quick update on Frank's drone, we dive into the world of static web apps, websites, and pages that are completely free to host on different platforms. Follow Us Frank: Twitter, Blog, GitHub James: Twitter, Blog, GitHub Merge Conflict: Twitter, Facebook, Website, Chat on Discord Music : Amethyst Seer - Citrine by Adventureface ⭐⭐ Review Us (https://itunes.apple.com/us/podcast/merge-conflict/id1133064277?mt=2&ls=1) ⭐⭐ Machine transcription available on http://mergeconflict.fm

Philosophical Disquisitions
Ethics of Academia (7) - Aaron Rabinowitz

Philosophical Disquisitions

Play Episode Listen Later Jul 25, 2022


In this episode I chat to Aaron Rabinowitz. Aaron is a veteran podcaster and philosopher. He hosts the Embrace the Void and Philosophers in Space podcasts. He is currently doing a PhD in the philosophy of education at Rutgers University. Aaron is particularly interested in the problem of moral luck and how it should affect our approach to education. This was a fun conversation. Stay tuned for the Schopenhauer thought experiment around the 40 minute mark! You can download the episode here or listen below. You can also subscribe the podcast on Apple, Spotify, Google, Amazon or whatever your preferred service might be. #mc_embed_signup{background:#fff; clear:left; font:14px Helvetica,Arial,sans-serif; } /* Add your own MailChimp form style overrides in your site stylesheet or in this style block. We recommend moving this block and the preceding CSS link to the HEAD of your HTML file. */ Subscribe to the newsletter

airhacks.fm podcast with adam bien
HATEOAS, Data APIs, Java and How htmx Happened

airhacks.fm podcast with adam bien

Play Episode Listen Later Jul 24, 2022 87:26


An airhacks.fm conversation with Carson Gross (@htmx_org) about: Apple IIgs and HyperTalk, _hyperscript, starting with VBA then using Java, EJB 1.0 and J2EE, gosu, gscript, implementing Ruby on Rails, teaching at The Montana State University, Java got lots os stuff right, javalin and jobrunr, Java and Ruby on Rails, NodeJS became more appealing to Ruby on Rails developers, Yukihiro Matsumoto created Ruby, performance challenge with sorting rows in a table, JQuery get function, the intercooler.js library, intercooler is the competitor of turbolinks, WebComponents and CustomElements, BCE and the bce.design template, BCE follows the data API approach, htmx works with data attributes, the popularity of Angular, GWT was popular, htmx renders HTML directly, htmx follows HATEOAS, HATEAOS is stateless - the response already contains all possible actions, Roy Fielding coined the term REST, web was designed for coarse grained interactions, with hypermedia approach messages are self-descriptive - API versioning is easier to maintain, htmx encourages use of Java, JSPs with WebComponents (link to youtube ), the Quarkus Renarde web framework, implementation of authorization and authentication with htmx, GraphQL gives developers and users a lot of power - which can be a security issue, GraphQL requires the implementation of resolves, how to version a data API, Stefan Tilkov and resource oriented architectures ROAs, endless scrolling with htmx is easy to implement, htmx on discord Carson Gross on twitter: @htmx_org, carson's company: Big Sky Software

JS Party
Frontend Feud: ShopTalk vs CSS Podcast

JS Party

Play Episode Listen Later Jul 22, 2022 58:01


What's this? A Frontend Feud! The ShopTalk guys return to defend their championship over Syntax against new contenders: Una and Adam from The CSS Podcast!

Changelog Master Feed
Frontend Feud: ShopTalk vs CSS Podcast (JS Party #235)

Changelog Master Feed

Play Episode Listen Later Jul 22, 2022 58:01


What's this? A Frontend Feud! The ShopTalk guys return to defend their championship over Syntax against new contenders: Una and Adam from The CSS Podcast!

PodRocket - A web development podcast from LogRocket
PodRocket presents: Full-stack development has changed with HTML All The Things

PodRocket - A web development podcast from LogRocket

Play Episode Listen Later Jul 21, 2022 74:45


We'll be back with our PodRocket episodes tomorrow but today, we're bringing you a guest episode with Matt and Mike from HTML All The Things podcast about how full stack development has changed, including how Next.js, Nuxt.js, and SvelteKit have evolved. Links https://www.htmlallthethings.com https://twitter.com/htmleverything https://www.patreon.com/htmlallthethings Follow us. Get free stickers. Follow us on Apple Podcasts, fill out this form (https://podrocket.logrocket.com/get-podrocket-stickers), and we'll send you free PodRocket stickers! What does LogRocket do? LogRocket combines frontend monitoring, product analytics, and session replay to help software teams deliver the ideal product experience. Try LogRocket for free today. (https://logrocket.com/signup/?pdr)

Python Bytes
#293 And if I pull this open source Jenga block...

Python Bytes

Play Episode Listen Later Jul 20, 2022 47:34


Watch the live stream: Watch on YouTube About the show Sponsored by Microsoft for Startups Founders Hub. Special guest: Ashley Anderson Ashley #1: PSF security key giveaway for critical package maintainers Giving away 4000 2FA hardware keys Surely a team effort but I found it via @di_codes twitter (Dustin Ingram) links to previous talks on PyPI/supply chain security Interesting idea for helping with supply-chain vulnerabilities At least one dev pulled a critical package in response Previously: I don't have any critical projects Armin Ronacher has an interesting take Michael #2: PyLeft-Pad via Dan Bader Markus Unterwaditzer was maintaining atomicwrites More on how this relates to a project (Home Assistant) I wonder if PyPI will become immutable once an item is published Brian #3: FastAPI Filter Suggested and created by Arthur Rio “I loved using django-filter with DRF and wanted an equivalent for FastAPI.” - Arthur Add query string filters to your api endpoints and show them in the swagger UI. Supports SQLAlchemy and MongoEngine. Supports operators: gt, gte, in, isnull, it, lte, not/ne, not_in/nin Ashley #4: Tools for building Python extensions in Rust PyO3 pyo3 - Python/Rust FFI bindings nice list of examples people might recognize in the PyO3 README Pydantic V2 will use it for pydantic-core maturin - PEP 621 wheel builder (pyproject.toml) pretty light weight, feels like flit for Rust or python/Rust rust-numpy (+ndarray) for scientific computing setuptools-rust for integrating with existing Python projects using setuptools Rust project and community place high value on good tooling, relatively young language/community with a coherent story from early on Rust macro system allows for really nice ergonomics (writing macros is very hard, using them is very easy) The performance/safety/simplicity tradeoffs Python and Rust make are very different, but both really appeal to me - Michael #5: AutoRegEx via Jason Washburn Enter an english phrase, it'll try to generate a regex for you You can do the reverse too, explain a regex You must sign in and are limited to 100 queries / [some time frame] Related from Simon Willison: Using GPT-3 to explain how code works Brian #6: Anaconda Acquires PythonAnywhere Suggested by Filip Łajszczak See also Anaconda Acquisition FAQs from PythonAnywhere blog From announcement: “The acquisition comes on the heels of Anaconda's release of PyScript, an open-source framework running Python applications within the HTML environment. The PythonAnywhere acquisition and the development of PyScript are central to Anaconda's focus on democratizing Python and data science.” My take: We don't hear a lot about PA much, even their own blog has had 3 posts in 2022, including the acquisition announcement. Their home page boasts “Python versions 2.7, 3.5, 3.6, 3.7 and 3.8”, although I think they support 3.9 as well, but not 3.10 yet, seems like from the forum. Also, no ASGI, so FastAPI won't work, for example. Still, I think PA is a cool idea, and I'd like to see it stay around, and stay up to date. Hopefully this acquisition is the shot in the arm it needed. Extras Michael: Python becomes the most sought after for employers hiring (by some metric) Ashley: PEP691 JSON Simple API for PyPI Rich Codex - automatic terminal “screenshots” Joke: Neta is a programmer

Philosophical Disquisitions
Ethics of Academia (6) - Helen de Cruz

Philosophical Disquisitions

Play Episode Listen Later Jul 20, 2022


In this episode I chat to Helen de Cruz. Helen is the Danforth Chair in Humanities at the University of St. Louis. Helen has a diverse set of interests and outputs. Her research focuses on the philosophy of belief formation, but she also does a lot of professional and public outreach, writes science fiction, and plays the lute. If that wasn't impressive enough, she is also a very talented illustrator/artist, as can be seen from her book Philosophy Illustrated. We have a wide-ranging conversation about the ethics of research, teaching, public outreach and professional courtesy. Some of the particular highlights from the conversation are her thoughts on prestige bias in academia and the crisis of peer reviewing. You can download the episode here or listen below. You can also subscribe the podcast on Apple, Spotify, Google, Amazon or whatever your preferred service might be.  #mc_embed_signup{background:#fff; clear:left; font:14px Helvetica,Arial,sans-serif; } /* Add your own MailChimp form style overrides in your site stylesheet or in this style block. We recommend moving this block and the preceding CSS link to the HEAD of your HTML file. */ Subscribe to the newsletter

ERIC KIM
Becoming a Photographer

ERIC KIM

Play Episode Listen Later Jul 20, 2022 14:34


Becoming a Photographer READ MORE PDF DOWNLOAD What does it mean to be a photographer? Being a photographer means the camera is your way to engage with, interact with, and interpret the world around you. Why the notion of becoming? I'm starting to think and believe that progress, and “getting better“ at something is too soft of a concept. Why? It is mostly a post industrial one, in which we are trying to use numbers, and other quantitative measures to rank one another. The ethos behind that is a new religion; the defecation of numbers, or data. For example, the underlying ethos behind Google and a lot of tech companies is if data doesn't prove it, it is not substantial. However, to live in life in which you are just relying on data is a cowardly one. Why? I think the reason why people rely on numbers so much is that they lack faith in themselves. Rather than pursuing their own inner artistic ingenuity, like Steve Jobs, people just allay their responsibility and outsource the risk to “control groups“, or “focus groups“. There is no focus group on earth that would have initially approved Steve Jobs‘s vision of the iPhone without having a physical keyboard. Remember just a decade ago when Blackberry phones with the physical keyboard was all the rage? And when the iPhone first came up with a touch keyboard, how much criticism and critique it got? Or when Steve Jobs first made the iPad, how much hate mail he got for not having USB ports? Detaching yourself from numbers In today's world, I believe that one of the best ways to become more courageous, is a “via negativa” (Taleb) one. For example, acts of subtraction makes one more courageous. Or acts of deletion make one more courageous. For example, physically deleting, and permanently deleting files on your computer takes great courage. Or permanently deleting email, instead of archiving it and hoarding it forever. How funny is it that we millennials disdain how our parents hoard all of this physical junk in their garage is, yet we hoard all of our data on the cloud. Therefore, a great act of courage you could do is just delete your Instagram. Nowadays, I think having an Instagram is almost akin to saying you go to McDonald's. Everyone has one, thus you should have one. But then again 80% of America is obese, should you? Most people drink Coca-Cola; should you? Most people prefer to drink a Starbucks Frappuccino; should you? When is it wise to take the harder road? Another strange bias we have in America is that the more difficult the path, the harder is, the more virtuous it is. However, I believe this to be quite foolish. Maybe then it would be more virtuous for us to use a horse and carriage instead of an automobile car. As for us photographers, perhaps the most basic thing we could learn actually how to do is how to build and maintain our own website and blog. Our own self hosted domain. Yes, there is some level of technical difficulty which is required of us, yet it is still a quadrillion times easier than learning how to code. For example, I only know the basics of FTP, website domain hosting stuff, HTML, etc. I know the purest basics to just get done what I need to get done. But beyond that, I have no idea. I have no idea how to hand code my own website; I prefer to just use templates. And no, learning how to self build your own website by hand is not virtuous. I recently had a conversation with an aspiring artist hipster who said he wanted to learn how to build his own website from hand, but in reality, my sense was he was making zero progress on it. That for him, i

Frontend First
The problem with buttons on the web

Frontend First

Play Episode Listen Later Jul 20, 2022 55:22


Sam and Ryan chat about issues with default HTML buttons on the web across different devices and browsers. They talk about the Extensible Web Manifesto, how the React Aria library helps standardize button behavior across platforms, and the difference between state-based and event-based animations.Topics include:0:00 - Intro2:09 – The problem with default buttons on the web -17:26 – How we got here, and the Extensible Web Manifesto -26:22 – React Aria's unified Press interface -32:26 – Getting consistent Focus styling -40:30 – Event-based vs. state-based animations -Links:Sam's video on building an animated buttonReact Aria useButtonBuilding a Button Part 1: Press EventsBuilding a Button Part 2: Hover InteractionsBuilding a Button Part 3: Keyboard Focus BehaviorThe Extensible Web Manifesto

MacCast (Enhanced) - For Mac Geeks, by Mac Geeks
Maccast 2022.07.17

MacCast (Enhanced) - For Mac Geeks, by Mac Geeks

Play Episode Listen Later Jul 18, 2022 61:45 Very Popular


An enhanced podcast about all things Macintosh. For Mac geeks, by Mac geeks. Episode 837. Apple's next headset will be more affordable. Mac shipments down (or up) depending. New details on Apple Car. Next iPads. Lighter. Better displays.. Apple TV+ racks up the Emmy noms. Drobo alternatives and backup. Launchpad missing apps? Amazing spatial audio. Merging Music Libraries. Special thanks to our sponsor: Zocdoc Shownotes in: HTML or OPML Subscribe to the Podcast Feed or Get the MP3

JS Party
Deno's Fresh new web framework

JS Party

Play Episode Listen Later Jul 15, 2022 47:47


Deno team member Luca Casonato joins Jerod & Feross to tell us about Fresh – a next generation web framework, built for speed, reliability, and simplicity.

Extreme Health Radio
Dr. Artour Rakhimov – How Your Breathing Is A Factor In Your Energy Levels, Overall Health, Hormones, Sleep Levels & Preventing Disease

Extreme Health Radio

Play Episode Listen Later Jul 15, 2022 117:53


Dr. Artour Rakhimov joined us today to talk about how breathing affects our health, our energy levels, our hormones and the ability to prevent disease. It's really interesting because sometimes the easiest and most simply things are the very things we ignore when it comes to our health. Oftentimes we're concerned with getting medicinal mushrooms, doing high dose vitamin c or sitting FAR Infrared saunas. But the most important things are the very things we overlook like getting a good sleep, eating whole fresh food, drinking enough water, breathing correctly and moving our body in the right way. Being healthy and living an optimized life is really simple but we need to get back to basics. What I love about Dr. Artour Rakhimov is that his work is essentially free. You can learn all of this wonderful information about breathing online and start to adapt it to your own life. And the coolest thing is that once you retrain your body how to breathe properly, you can reap the benefits of it for the rest of your life without even trying. For those that don't know Dr. Artour Rakhimov is the author of such books as Breathing Slower and Less, Amazing DIY Breathing Device, Advanced Buteyko Breathing Exercises, Sleep Better and Less - Naturally and Crohn's Disease and Colitis: Hidden Triggers and Symptoms. We talked a lot about the Buteyko breathing technique which allows less air to come into the lungs but more oxygen. So it's a slower breath where the oxygen penetrates deeper into the lungs but it's not a deep breath in the chest. It's a way of breathing deeply into your diaphragm but not necessarily breathing in lots of air. During the show I mentioned Rickson Gracie doing pranayama breathing as seen below. Just fast forward until 2:57 seconds to see it. :) It's a very interesting concept. If you enjoyed it, please share this show with your friends by clicking like and share on this page! Show Notes For This Episode: Click here to download the show notes for THIS EPISODE. Commercials During This Episode: Commercial #1 BARF World Raw Dog Food Commercial #2 Morrocco Method Raw Hair Care Products Commercial #3 The Yoga Trapeze Commercial #4 Austin Air Purifiers Commercial #5 The Medical Biomats Find Extreme Health Radio On: [include file=showpage-itunes-soundcloud-stitcher.html] Please Subscribe: Subscribe To Our Radio Show For Updates! Other Shows: [include file=show-links.html] Listen to other shows with this guest. Show Date: Friday 2/27/2015 Show Guest: Dr. Artour Rakhimov Guest Info: Author of the world's largest website devoted to breathing, breathing techniques, and breathing retraining Author of numerous YouTube videos (https://www.youtube.com/user/artour2006) Buteyko breathing teacher (since 2002 up to now) and trainer of practitioners Inventor of the Amazing DIY breathing device and numerous contributions to breathing retraining Whistleblower and investigator of mysterious murder-suicides , massacres and other crimes organized worldwide by GULAG KGB agents using the fast total mind control method Practitioner of the New Decision Therapy and Kantillation Level 2 Trainer of the New Decision Therapy Show Topic: breathing, yoga, oxygen Guest Website(s): http://www.normalbreathing.com/ Social Websites: Facebook https://www.facebook.com/Normalbreathing Twitter https://twitter.com/normalbreathing Others https://www.pinterest.com/normalbreathing/ https://www.youtube.com/user/artour2006 Guest Product(s): Please Support Us If You Are Able: (Opens in a new window - Every bit helps us to keep delivering even better shows that help you heal & thrive!) Support & Share :) Copy and paste the following HTML code into any web page. Or you can grab a badge! Interview with Dr. Artour Rakhimov Video Version:

Changelog Master Feed
Deno's Fresh new web framework (JS Party #234)

Changelog Master Feed

Play Episode Listen Later Jul 15, 2022 47:47


Deno team member Luca Casonato joins Jerod & Feross to tell us about Fresh – a next generation web framework, built for speed, reliability, and simplicity.

InfoSec Overnights - Daily Security News
Lilith Not-Fair, Retbleed Spectre, Bandai Namco Gamed, and more.

InfoSec Overnights - Daily Security News

Play Episode Listen Later Jul 14, 2022 2:40


A daily look at the relevant information security news from overnight - 14 July, 2022Episode 265 - 14 July 2022Lilith Not-Fair- https://www.bleepingcomputer.com/news/security/new-lilith-ransomware-emerges-with-extortion-site-lists-first-victim/ Retbleed Spectre - https://www.securityweek.com/retbleed-new-speculative-execution-attack-targets-intel-amd-processorsAWS Kubernetes Flaw - https://portswigger.net/daily-swig/vulnerability-in-aws-iam-authenticator-for-kubernetes-could-allow-user-impersonation-privilege-escalation-attacksTeams Sticker Shock- https://portswigger.net/daily-swig/microsoft-teams-security-vulnerability-left-users-open-to-xss-via-flawed-stickers-feature Bandai Namco Gamed - https://www.bleepingcomputer.com/news/security/bandai-namco-confirms-hack-after-alphv-ransomware-data-leak-threat/Hi, I'm Paul Torgersen. It's Thursday July 14th 2022, and this is a look at the information security news from overnight. From BleepingComputer.com:There's a new ransomware group that has just hit the scene named Lilith. They have created the standard double-extortion leak site and added their first victim, a large construction group in South America, which has since been removed from the site. Analysis of the new family shows it does not appear to introduce any novelties, but another someone to keep an eye on. Details in the article. From SecurityWeek.com:Researchers have devised a new speculative execution attack called Retbleed, that can lead to information leaks and works on both Intel and AMD processors. The attack targets retpolines, or return trampolines, which was one of the defenses proposed in back 2018 to mitigate the Spectre side-channel attacks. You can see all the details and a link to the research paper in the article. From PortSwigger.net:A vulnerability in AWS IAM Authenticator for Kubernetes could allow a malicious actor to impersonate other users and escalate privileges in Kubernetes clusters. This impacts Elastic Kubernetes Service clusters configured with the AccessKeyID template parameter. If this is you, make sure you are running version 0.5.9. Also from PortSwigger.net:Attackers could abuse the sticker feature in Microsoft Teams to conduct cross-site scripting attacks. The Teams platform converts stickers into an image and uploads the content as RichText/HTML in the subsequent message. This can be manipulated for a potential HTML injection attack against multiple domains. All the sticky details in the article. And last today, from BleepingComputer.comJapanese game publishing giant Bandai Namco has confirmed that they suffered a cyberattack. The BlackCat ransomware gang has claimed responsibility for the attack on their data leak site. The company says the breach occurred on July 3rd to their internal systems in Asian regions other than Japan, and they are still evaluating the scope and type of information compromised. That's all for me today. Have a great rest of your day. Like and subscribe, and until tomorrow, be safe out there.

Software Engineering Unlocked
Mentoring as an engineering manager

Software Engineering Unlocked

Play Episode Listen Later Jul 13, 2022 49:55


Today's episode is sponsored by Mergify, the faster and safer way to merge your code.[00:01 - 06:24] Opening Segment Start saving time by automatizing your pull requests and securing the code merge using Mergify!Sign up for a demo at https://mergify.com/Get to know Jess Roseher reasons for her helping strangers on the Internet[06:25 - 11:59] Bottom-Up Communication Vs. Top-Down ManagementThe challenges of upward communicationHow to balance personal values at workIt's unique for individual circumstanceManaging the conflict of interest as a manager to upper management[21:00 - 33:33] Level Up Your LearningWhy Jess' started an online learning programIn search of the best tool for virtual and distance learningThe impact of tools on the quality of learningMentorship and organizational rankEstablishing healthy boundariesResilience in an educational setting[33:34 - 44:46] Let's Start Speaking The Same LanguageAcing the basics: Why learning the fundamentals is everythingLet's talk about programming languageHow to improve team communication and having a shared language[44:46 - 49:55] Closing SegmentDr. McKayla talks about her book in progress and her advice to those who would like to write a bookFinal wordsTweetable Quotes“Sometimes changing jobs is easier than making peace with uneasy ethical decisions.” - Jess Rose“Nobody tells you, but you're not going to start managing people and get it right right away.” - Jess Rose“We learn better when we're chill.” - Jess Rose“I think it's really valuable to talk about the culture of the language we use around programming and really the culture of the structures we build because it's not transparent to people.” - Jess RoseConnect with Jess Rose on LinkedIn, Twitter, and her website. Go to Github.com/JessicaRose to check out her 1-1s.Resources MentionedMergify - Sign up for a demo now!freeCodeCampClass CentralWeaving the Web by Tim Berners-LeeThe Intuitive Programmer: Learning How to Learn for Programmers (Barbara Oakley & Zach Caceres)Software Engineering Unlocked Episode with Dr. Cat HicksFelienne HermansDan AbramovLet's Connect! You can connect with me, Dr.  McKayla on Instagram, Twitter and Youtube to look into engineering software, and learn from experienced developers and thought leaders from around the world about how they develop software!LEAVE A REVIEW + help someone who wants to know more about the engineering software world. Your ratings and reviews help get the podcast in front of new listeners. _______Transcription[00:00:00] Dr. McKayla Hello, and welcome to the Software Engineering Unlocked podcast. I'm your host, Dr. Mckayla and today I have the pleasure to talk to Jess Rose. Jess is a technology professional and keynote speaker specializing in community building outreach and developing better processes for talented technology. She is passionate about fostering more equal access to technical education, and digital spaces.  But before I start, let me tell you about an amazing startup that is sponsoring today's episode Mergify. You know, I'm all about code reviews and pull requests. Having your teammates review your code can be super beneficial, but it also can create a bottleneck and slow down your software development. With Mergify, your team can be way more productive with GitHub. Mergify automates all about merging pull requests, you can specify the merge conditions, and Mergify will take care of the rest. Do you want a specific order for merging the pull requests? Should one PR be prioritized? Or do you need a copy of the PR and another branch for bug fixing? No problem. Mergify can take care of all those situations. By saving time, you and your team can focus on projects that matter. Mergify integrates completely with GitHub and your CI pipeline. They have a startup program that could give your company a 12-month credit up to $21,000 of value. Start saving time, visit Mergify.com to sign up for a demo and get started or just click the link in the show notes.  I'm super, super thrilled to have Jess here with me. Jess, welcome to the show.[00:01:38]  Jess Rose Oh, gosh. And I'm absolutely delighted to be here when you said hey, do you want to come and talk about teaching and learning? Oh, I'm just going to be insufferable. Thank you so much. [00:01:48]  Dr. McKayla I'm really excited because I'm following you on Twitter. And I see that you're creating spaces for people to learn to get better to grow. Right. So there are a couple of things that I want to touch base on today with you. One is the 1-1s that you're offering. So maybe, maybe let's get started with that. Because I see you from time to time you say, you know, I have some time available, why not hop over on a call, and I can help you with some career advice? How's it going? What do you do with people? What kind of people are picking up on that?[00:02:27]  Jess Rose So I've been doing this for about, I looked the other day because I do, I do keep records and privacy-preserving records just like,  oh, what kinds of things am I talking to people about? And I've been doing this for about eight years now. So just broke 1700 folks I've talked to over the years.[00:02:40] Dr. McKayla Wow. [00:02:40]  Jess Rose And you would think oh, it's going to be mostly juniors or mostly people trying to break into tech. But just the absolute vastness of experience is so dazzling and exciting and strange to me. I don't see myself as especially well suited to give great advice. But on these calls, people are almost never asking for actual advice. So a lot, most of it's just, I'd like to be heard and I'd like someone to confirm that my experience is unusual or isn't unusual. Or getting sort of a level check for a different area saying, Hey, I'm based in this region, and I'm looking for work in your region. What's that like? What's the experience like? What's the process like? I actually documented the whole process out because I want, I definitely want other people to be doing this if you feel like it. No pressure. And it's on my GitHub. So GitHub.com/JessicaRose. And it should be right on there as  1-1s.[00:03:37] Dr. McKayla  Yeah, I saw that. I saw that on your Twitter feed. So it tells us how to do those 1-1s and how to, what questions to ask, and so on?[00:03:46] Jess Rose  Yeah. And mostly just about the tooling. So how to get it scheduled,  how to get that sorted? And then because I'm a weirdo, how to get the records of who chatted to you deleted if you want to, like, yeah, I wouldn't keep notes on somebody who doesn't want me to keep notes.  [00:04:00] Dr. McKayla  Yeah. And I think it's good for privacy as well, right?. If people I don't know which topics, they are coming to you, but I mean, some of them might be private, and you know, especially if you're having maybe, like, I think if you need advice, you're very often not such a good place, right? Probably more than being in a great place where you think, well, everything figured out, you know, things are going smooth than you're seldomly reaching out to other people. It would be like I'm bragging now to you. You're more probably reaching out if you have some problems with your team maybe or getting a job or something like this. Is that what people talk to you about in the sessions?[00:04:41] Jess Rose  So anything from, Hey, am I getting paid right? To, Oh, I'm getting screamed at a lot at work. Is this normal? So a lot of them are sort of, oh, gosh, but a lot of times folks just want to explore what's going on next. I've managed people a lot in my career. And one of the things that I always, I always have a difficult time with, and I hope other managers do, too, is how do you deal with the conflict? And there's always going to be conflict between what's best to the individual person you're managing, and what's best for the company because those are those, And one of the big things I push when I do manage people is, hey, do you have someone external to the company to give you good advice when I can't? Or I shouldn't give you the advice that's best for you?[00:05:31] Dr. McKayla  Yeah, yeah, it's a conflict, right? Because obviously, you don't want to lose that person. But you see that they're outgrowing, you know, maybe the position?[00:05:42] Jess Rose  Oh, I really just want to chase this up a minute. I'm always like, you don't want to lose somebody, like, you don't want somebody to move on for your team because they were unhappy or mistreated. This is definitely from me being a teacher for too long. I'm always pretty excited when somebody graduates up out of a team I run. Like, of course, you want to make sure that people have space to grow, of course, you want to be actively making sure there's career progression and more things to learn. But and especially in a job market, like right now, sometimes people like oh, cool, I could make a bigger salary jump bracket, they could make your title jump by leaving. And I'm always pretty chill with that.[00:06:24] Dr. McKayla Yeah, yeah. Me too. And my husband is also managing a bunch of people. And but I see tension there, right? So I think he's always really behind the people. But then upper management would be, yeah, but you know.[00:06:38] Jess Rose The business case for retention.[00:06:40] Dr. McKayla  Exactly. Right. And the same for, for example, giving your raise, right. And I think, especially maybe the managers, you know, that are really like first line, they are more for the people because they have like some personal relationship, and then one level up, it's already like, yeah, but you know, we don't have the budget or we don't want or we believe we can still keep that person, you know, for this for this cheaper?[00:06:38] Jess Rose  Oh, well, you know, let's give it another quarter or two and wait and see.[00:07:08] Dr. McKayla Yeah, exactly, right?[00:07:10] Jess Rose Baffling.[00:07:11] Dr. McKayla how do you do that as a manager? How do you speak up for your, for your people, or for your team? And h ow do you deal with that conflict as well?[00:07:22] Jess Rose  So I think that's a really challenging one because I think that the conflict there is still the same. What do you do as an individual manager when the y eah, when your contractual, your fiduciary duties to your company, run counter to your individual ethical responsibilities to the people you manage? And or what happens when there's a conflict between the needs of an individual and the needs of a team? And it's not a good answer. And it's not a reassuring answer. But it depends. If somebody is facing treatment that feels unfair, or targeted, or they're in a position that I, generally, if somebody is in a position, I'm not okay, with being much more lovingly strident around, hey, this is a topic I would really bring to your external mentor A well, and then setting really clear limits internally about what, even as a manager, you are and aren't willing to do. So somebody saying, Oh, you get the idea that, Oh, maybe we want to manage so and so out, go ahead and write them up for stuff that the rest of the team routinely does. You still have consent as a manager. So you could say, like, yeah, no, I won't work in a space that involves maybe this kind of behavior.[00:08:45] Dr. McKayla  Yeah, yeah, I think this is really important that we are standing up for our own ethics and for our own beliefs and value and, you know, also behind our, you know, our people that we, you know, I think we have a responsibility as well for and yeah, so I yeah, I can totally see that. [00:09:05] Jess Rose It's easy to say in this kind of job market in the West as well. I think, a re you based perhaps in Europe as well? [00:09:12] Dr. McKaylaYes. Yeah. [00:09:13] Jess Rose Because, like, these days for many European job markets in tech, finding a new job feels to many people who are established for juniors or people getting your first job,  It is hard. But for folks who've been in for a little while, and folks in different in high demand areas, getting a new job as a junior as a middleweight, or a senior, is not as difficult as it could be these days. Whereas if you're having to engage in management behavior that you're just not comfortable with, yeah, sometimes changing jobs is easier than making peace with uneasy ethical decisions. Yeah, sometimes that's not true for everybody. And it's a very, very privileged take for those of us who have a little bit of wiggle room.[00:09:58] Dr. McKayla  Yeah, I think so. And it really depends on where are you located? And what is your personal situation, right? Do you have dependents? Do you have like family or people that you have to take care of? And so on, which I think makes it much harder to say, you know, I'm going to not do that. But I think there, you know, there are boundaries, it's, it's one thing is playing along, and just, you know, or letting the other person also, you know, know, in the space that you have, right? You're also like, as a manager, you also, you can't just go and, you know, give advice directly conflicting with the interests of your upper management because that, you know, is a problem, but you can, you know, talk a little bit about, as you said, maybe asking you an external person, or also I think very well, you can say I'm disagreeing with this decision, right? And I advocated for you, unfortunately, you know, these were my boundaries here, for example, and let them know, I think that's, that's perfectly fine. Yeah. And I think that the problem is that if more of those things come together, people start thinking about leaving, right?[00:11:06] Jess Rose And that's not always a bad thing. As a manager, if you're not able to offer someone, a place that is safe, and productive, and non-traumatic to work, yeah, it's okay, that your people move on, and actually kind of preferable?[00:11:22] Dr. McKayla  Yeah, yeah, I think so, too. So another topic that I wanted to talk with you about, and it's a little bit related to management, but it's more related to teaching. So I don't think you have to be a manager to teach, right? You can be, you can be, you know, Junior Dev, Mid Dev, senior Dev, right, so we can all learn from each other. But I really see you as a teaching, you know, expert here. Yeah. Because you're, you're bringing topics around programming, but also, you know, advice for hiring or you know, how to get hired. And to so many people, right, you're, you're also making these really mass, mass online learning events, right, occur online boot camps. So how is that going? Why did you start that and is that only for really junior people?[00:12:12] Jess Rose So the first thing I want to do is like, I would absolutely love if there was an excuse for me, Oh, yes, I'll just take all the credit. But the free online boot camps that I've started are absolutely not just me. So they started as 12-week boot camps, and they've been collapsed into a reasonably intense but still part-time, six-week boot camp. And this is built off of the freeCodeCamp curriculum. So they're a registered nonprofit. They're amazing. We could not do this without them and without their permission. But also the good people, I'm pointing behind me like they're back there. The good people Class Central built a whole platform that lets us teach on so like, just really, and Ramon is my, my co-teacher. And he's he's just, it's almost disgusting how lovely he is. Like, the learners love him and deservedly so.[00:13:03] Dr. McKayla  Cool. Yeah. So what do you teach there? Is it like really the 101 of programming? Or is it more advanced concepts? Who is your target audience here?[00:13:14] Jess Rose  So this last cohort, which just ended about two weeks ago, I should get back to work on those. We had 15,000 unique learners across two tracks learning either web development, which is HTML, CSS, accessibility, really, really intro level of like first steps of programming, or across JavaScript. And again, that sort of first steps with JavaScript, getting started. So really sort of introductory level. But we added some additional forums for peer support. We've got a very noisy Discord. And then some live stream lessons and question-answer to get people unstuck. We've had such a, so I would have expected oh, these will be beginners. We have back-end devs who wanted to try out web development. We've got folks who don't want to go into tech, but they do want to build a website for their business. And the thing I was, I used to be a teacher and I used to be a linguist. And very selfishly, the thing I was, one of the things I was most excited about was the absolute range of the learners. We've got folks across every regularly inhabited continent. And folks joining us in this massive exciting range of first languages. I was just so, so people who are learning from their phones, people who are learning from the library computers, and I just really really loved this loud, chaotic, and so lovely and so supportive group of learners all helping each other out.[00:14:49] Dr. McKayla  Yeah, that's, that's really exciting. So I actually was thinking a little bit about learning on devices that are not high-end, right. And when I, when I started university, I couldn't afford a really high-end computer not even a normal computer, right? So I was on this, I got, I got one of those really cheap computers from somebody that you know, gave it to me for free. And it was a nightmare. It was a nightmare to work on that. And nowadays, it's obviously not the case anymore. And I'm really happy about that. But I was wondering what about, you know, people that don't want to work on the phone or work to, you know, on a tablet, and I'm pregnant right now. [00:15:32] Jess Rose Oh, congratulations. How exciting, how scary. [00:15:36] Dr. McKayla Yeah. But it's also a really cool experience because I'm thinking, like, this is my third child. So I know a little bit.[00:15:45] Jess Rose  Oh, you're just fine. You're like, duh, this happens.[00:15:46] Dr. McKayla I know what's going to happen, that I can sit here and you know, work on my comfortable devices. And so I tried a little bit to work on my phone and work on the tablet and so on, I still think it's really difficult. What tools do your learners have?[00:16:03] Jess Rose  Did somebody, somebody did one of my friends talk to you about this? I'm deeply suspicious. So I'm going to try really carefully not to say too much. I'm working on a little side project around this problem. Because this is a problem I've been thinking about a lot. So right now, and if our dear listeners aren't your viewers are, oh, gosh, what's the noun? Our beloved audience, your beloved audience