
Kodsnack
730 episodes — Page 14 of 15
Kodsnack 75 - Har vi några pyromaner i publiken
Fredrik och Kristoffer följer upp förra avsnittet om tangentbord och Javas diskreta charm. Sedan snackas det flexibilitet och abstraktioners alla lockelser och faror. Man är bäst lämpad att välja bibliotek och abstraktioner när man redan har löst problemet. Olika sätt att återanvända saker tas också upp - man måste inte alltid dela kod och skapa generella lösningar i bibliotek. Och kom ihåg att kod i sig är inte värdefull! Som avslutning snackar vi om kommande veckas konferenser. Kodsnack kommer att delta i Internet of things, At the frontend och Øredev, och vi vill väldigt gärna höra av och heja på alla lyssnare som råkar ha vägarna förbi. Def första lyssnare som säger hej på Øredev får en t-shirt, så långt (det väldigt lilla) lagret räcker. Ett stort tack till Cloudnet som sponsrar våra livesändningar och erbjuder finfina VPS! Diskutera gärna avsnittet på Techworld! Länkar Cloudnet sponsrar våra livesändningar VPS - virtual private server Scrollar som smör Förra veckans avsnitt om bland annat tangentbord och Java S33ks kommentar Axios - modulärt tangentbord Crowdsupply Axios på Crowdsupply Diskussionstråd på Geekhack Gammalt trådlöst appletangentbord Java Swing Applikationspaket på Mac OS X Apples gamla JAR bundler Apples javaversion Cocoa Apples gama javabrygga Anden i flaskan-effekten Nvidia och AMD Oracles bundler för Java universalJavaApplicationStub Cyberduck OpenJDK Icedtea Att släppa sin javaapplikation via App store DLL @kodsnack på Twitter Jonas Elfströms tweet Flipping the bozo bit diskuterar flexibilitet Servicebussar Att raka en jak Kristoffers spelprojekt i C Boost Arkitekturastronauter ORM - Object-relational mapping Core data Next Proffsen har svårt att välja mellan Core data och att arbeta mer direkt med en databas Bobby tables Hibernate Internet of Things - endagskonferens i Malmö om internetanslutna saker Øredev At the frontend - endagskonferens i Köpenhamn om webbutveckling Zoom H2n - vår nya mikrofon Björn Granvik och Eva Ljungkvist Fred George James Mickens James Mickens tal på PDX 2014 Stefan Karpinski Julia - programmeringsspråket Juliamängden Fraktaler Rob Ashton Erlang Clojure Jen Myers CSS - Cascading style sheets Jen om mentorskap Girl develop it Chris Noessel Sci-fi interfaces Her - egensinnig och varmt rekommenderad film Øredev anordnar öppen visning av Her Titlar För att koda är det ju väldigt överlägset Allas döda favorithäst Eftersom det bara är en mapp Även på Mac så har man ju kommit in i samtiden Det kanske är samtiden, men det är ju inte positivt Bashmagi Vi är ju lite känsliga för stora nedladdningar Servicebussar och andra hemska saker Det är inte ens min kod som är poängen (Problemen med att ha) en massa abstraktioner i händerna (Man har) en massa lösningar som letar efter problem När man väljer sina abstraktioner Vara medveten om vad man inte tänker på Bygga sin första prototyp av Lego Vara rädd för att skriva om Slåss mot biblioteket Vi har köpt in fjorton romaner När man börjar prata om arkitektur Favoritsak jag inte tycker om En såndär abstraktion som precis alltid läcker Bobby tables-problem Är vi nöjda med flexibiliteten? Har vi några pyromaner i publiken En annan stil än de flesta IT-konferenstalare
Kodsnack 74 - Resten av livet med dina handleder
Kristoffer och Tobias snackar tangentbord, att anpassa dem efter sina behov och hur de på diskreta och ofta störande sätt skiljer sig mellan operativsystem och länder. Vad man vill och kan göra för att motverka ont i händer, armar och handleder. Sedan lite mer om Kristoffers hackvecka och minecraftklon. Problemen med obstinat felsökning per stirrande på kod. Teknikval för minecraftklonen, målsättningar och anledningar till olika val. Diskussioen glider naturligt över i att skriva i lågnivåspråk och om man idag förstår hur datorer fungerar. Det är bra för alla att skriva lite C. Eller? Vilka lågnivåsaker kan vara värda att ha lite koll på idag? Som avslutning vankas snack om utvecklingsmiljöer och lite kort om språket Rust. Ett stort tack till Cloudnet som sponsrar våra livesändningar och erbjuder finfina VPS! Diskutera gärna avsnittet på Techworld! Länkar Cloudnet sponsrar våra livesändningar VPS - virtual private server Truly ergonomic - Tobias tangentbord Bruna, röda och blå tangentbordskopplingar Kristoffers tangentbord - Microsoft comfort curve 3000 for business Purple scout - konsultbolag där både Tobias och Kristoffer jobbat KVM-växel - låter dig ha ett tangentbord och en mus ansluten till flera datorer Bricka - att råka sabba mjukvaran i en pryl så att prylen inte gör mer än en tegelsten Sculpt ergonomic keyboard for business Microsoft comfort curve 2000 Chiclet-tangentbord Freestyle2-tangentbordet Synergy - mjukvarualternativ till KVM Dvorak Thinkpad Svorak Thinkpads trackpoint Microsoft Keyboard layout creator -program som kompilerar DLL-filer för att göra egna tangentbordslayouter HAL, udev och systemd - lågnivåsystem av olika ålder Anders tangentbordslayout XKB QWERTY - det vanligaste tangentbordsupplägget Wacom och deras ritbrädor Suses hackvecka 2014 Unreal-motorn Unity-motorn ANSI C GDB Valgrind Alpha compositing Z-buffring Moirémönster OpenGLs många versioner Mesa-biblioteket Intel HD Graphics 3000 Tessellering Shader strmcpy.c Assembler Lisp ML Prolog OCaml x86 MIPS Bytekod Glib stb.h SDL Qt Chromes utvecklarverktyg Firebug Tabeller i HTML CSS Gopher Geocities Less - preprocessor för CSS Eclipse - stor och spridd utvecklingsmiljö för Java IntelliJ IDEA - populär utvecklingsmiljö för Java JetBrains - tillverkare av IntelliJ och flera andra utvecklingsmiljöer CLion - Jetbrains nya utvecklingsmiljö för C och C++ Xcode - Apples utvecklingsmiljö Qt creator LLDB Refactoring vi Emacs Cmake - byggsystem Atom - Githubs textredigerare Skywriter - nedlagt projekt att utveckla en textredigerare inom Mozilla Light table Yosemite - senaste versionen av Mac OS X Virtual machine Rust Meetup - tjänst för att skapa och hitta mötesplatser för likasinnade Rust-träffen i Göteborg i vilken Kristoffer deltog Signedness Typkonvertering Normaltal Haskell Option-typ Monad Checked exceptions const i C++ - mer ett förslag än något annat Kristoffers rust-kod Øredev 2014 - kom och snacka kod med oss! Titlar Inte helt rätt med de som har skrivit mjukvaran Jag brickade mitt tangentbord Ingen aning om hur man skriver mjukvara (I klass med att) flasha om tangentbordet Det ser ju ut som riktiga piltangenter Sitta och skriva på en kudde Det där låter mer som en riktig produkt Sin egen bastardvariant av Dvorak Om jag brydde mig tillräckligt mycket Fördelen med Qwerty är att det står på tangentbordet Bra att bry sig ganska mycket om sitt tangentbord Jag har köpt datorer i Hongkong ganska länge Fördelen med att ha din helt egna tangentbordslayout Tangentbordssnack med Kristoffer och Tobias Resten av livet med dina handleder Om värdet i z-bufferten är längre bort än det man vill rita Sprid ljuset med ett steg Det kompilerar ju oerhört snabbt Det låter lite som självspäkning Om man har utsatts för C Självspäka sig litegrann i C Har du en kompilator så har du C Lågt ner i grafikstacken Sjukt frustrerande och intressant Hjärnklåda Som att försöka installera ett virus på sin dator Antingen det man vill ha eller ingenting
Kodsnack 73 - Systemen som är mot användare
Tobias berättar om sina senaste veckor upprepade appsläpp. Tobias berättar om Drive clubs släpp och serverhaveri och det pratas om serverstrul i spel där nätverket är antingen centralt eller ännu värre oviktigt för spelupplevelsen. På andra sidan snackar vi fördelarna med att ha nätverksanslutning och problem man skulle kunna lösa om man kunde förlita sig på att ha uppkoppling för jämnan. När och hur tar man sig samman och ersätter gamla lösningar med nya? Man glömmer lätt bort all kunskap som finns inbyggd i gamla system. Och varför glömmer man så lätt bort slutanvändare när man gör något nytt? Efter det hinner vi med dåliga gränssnitt och problemen med att ersätta fysiska knappar med beröringskänsliga kontroller. Att sitta fast i gamla lösningar. Var hade vi varit utan SDL? Ett särskilt tack till Cloudnet som sponsrar våra livesändningar och erbjuder finfina VPS! Diskutera gärna avsnittet på Techworld! Länkar Cloudnet sponsrar våra livesändningar VPS - virtual private server Xbox one kan numera köra Plex Boost - anrika C++-ramverk GCC Virtuell maskin - mjukvara som emulerar en fysisk Android TV E3 - Electronic entertainment expo, stor mässa för spel Driveclub - bilspel för Playstation 4 Forza - bilspelserie för Xbox Driveclubs serverhaverier Sim city-serverhaverier MMO WOW - World of warcraft DRM - digital rights management Latens - tidsfördröjning IBM system z - familj stordatorer Windows XP I Kodsnack 59 - Lära sig nya saker eller att bara skeppa pratade vi bland annat om att vidareutbilda sig och hänga med Suses hackvecka HTML5 Pust Siebel Request for proposal Jävla skitsystem! - bok om … system man inte gillar Jabra revo wireless - Tobias bluetoothlurar Kindle - läsplattor från Amazon Oneplus One - Nexustelefoner Thinkpad - anrik familj bärbara datorer och plattor skapad och länge ägd av IBM Lenovo SDL - Simple directmedia layer, mediebibliotek för många plattformar X11 5k iMac Steam-SDK:t Qt Pygame ABI - application binary interface Sam Lantinga - mannen bakom SDL En av de mer kända buggarna i OpenSSL Bash Øredev 2014 - tredagarskonferens där Kodsnack kommer att delta och intervjua Internet of Things - endagskonferens i Malmö At The Frontend - endagskonferens i Köpenhamn i november Kodsnack för Android Erik Jansson - Meldanya - skapare av Kodsnack-appen för Android b0bben Blackberry - kanadensisk mobiltillverkare Jolla - finsk mobiltillverkare Titlar Full deploy varje gång Riktigt gamla versioner av GCC Handbyggde tio olika versioner Det börjar låta som spelbranschen det här Det brukar ju inte vara så Om man ser det från ett utvecklarperspektiv En uppkoppling som vi alltid kan lita på Man vet ju att det inte är stort här Systemen som är mot användare Kedja av auktoritära personer Windows XP på bankomater Mer och mer pragmatisk för varje år som går När man bestämmer sig för att göra en ny version Extremt tufft att göra någonting rätt De hade kunnat vara fysiska knappar En icke-fysisk tangent
Kodsnack 72 - En verklig guldålder för att göra mjukvara
Fredrik och Kristoffer snackar om att leva på utveckling. Går det? Gick det inte bättre förr? Förstör inte appbutikerna allting? Var folk mer betalningsvilliga förr? Hur kan appar och plattformar ge en pengar även om man inte tjänar på själva appen? Sedan diskuteras att knacka spel i renaste C och OpenGL. Optimering, felsökning och spel som är roliga fastän de inte är bra. Storyns överdrivna vikt i spel och dess dåliga genomförande. Till slut återvänder vi till början och tänker på hur lätt man blandar ihop ansträngning man gjort med värdet i det man skapat. Ett särskilt tack till Cloudnet som sponsrar våra livesändningar och erbjuder finfina VPS! Diskutera gärna avsnittet på Techworld! Länkar Cloudnet sponsrar våra livesändningar VPS - virtual private server Vi har snackat om att försöka leva på utveckling då och då Shareware - mjukvara som distribueras fritt men med begränsningar som man måste köpa en licens för att ta bort. En klassisk variant var sharewarespel där man betalade för att låsa upp alla nivåer. Photoshop Microsoft office Apples appbutiker för iOS och Mac OS X För Android finns Google play och många andra appbutiker Windows store Några artiklar som diskuterar problemen med att leva på apputveckling Smurfbär - Apple har sedan dess ändrat hur köp inuti appar fungerar för att minska risken att sådant händer In-app purchase - köp av nytt innehåll inuti en app Folk som önskar sig betalda uppgraderingar i Apples appbutiker Folk som önskar sig provversioner av appar i Apples appbutiker Brent Simmons RSS Netnewswire - släpptes i juli 2002 Unread’s numbers - Brent om pengarna Netnewswire drog in per månad Corel WinZip Sublime text - kraftfull textredigerare för flera plattformar … men Kristoffer har ju alltid Emacs CP/M Apogee - även kända som 3D realms Epic megagames Kickstarter Patreon Diskussioner om hur app store behöver förbättras The race to the bottom benefits platforms (not developers) Wordpress Sims Saker till försäljning i Sims Second life Unity Minecraft på Youtube Wordfeud Cards against humanity Accidental tech podcast Inlägg om att inte ha tjänat pengar på sin app men fått kontakter och jobb tack vare den Kristoffers tidigare berättande om sin minecraftklon i avsnitt 61 - Det blir inga landskap, det blir webbservrar och sliders Vertex Shader SDL - Simple directmedia layer, korsplattformsramverk för media GDB VOGL - OpenGL-debugger RAD game tools OpenGL ES-verktyg i Xcode Qt Direct3D Suses hackvecka openSUSE Starcraft cinematics DVD Parallaxscroll psDoom - Doom som processhanterare Wolfenstein 3D med webbteknik Doom med webbteknik Quake Live - Quake 3 i webbläsaren, men i en plugin, inte i ren webbteknik Poddradioprogrammet DLC - avsnitt 40, där Destiny diskuteras Jeff Cannata Destiny Halo - serie förstapersonsactionspel (främst) för Xbox In Halo 1, there was maybe 30 seconds of fun Covenant - huvudmotståndarna i Halo-serien Titan - Blizzards nyligen nedlagda MMO Warcraft adventures: Lord of the clans - nedlagt äventyrsspel i warcraftvärlden Sacrifice Sunk costs Flappy bird Orthogonality Marco Arment Overcast Instapaper Tumblr
Kodsnack 71 - När man exponerar sitt versionsnummer
Vi följer upp avsnittet om Javascript och fyller på med mer diskussion om Javascript och dess mening. Ett verktyg kan vara rätt för din situation även om det oftast inte är rätt för alla andra. Sedan snackar vi versionsnummer utifrån Microsofts nyss presenterade Windows 10. Hur hanterar man versionsnummer, vad bör de vara och ska de ens innebära något? Diskutera gärna avsnittet på Techworld! Länkar Vårt javascriptavsnitt - Att helt hänge sig till ett ramverk Windows 10 Cloudnet sponsrar våra livesändningar Kodsnacks livesändningssida - torsdagar 20:30 är hålltiden Markus Fredrikssons kommentar Tvåvägsdatabindning - att koppla samman ett objekts egenskap med ett värde i en vy så att en ändring av den ena automatiskt ändrar den andra Scheme Statiskt omfång Lös typning Förstaklassfunktion Pakethanterare Jquery Backbone.js JSON - Javascript object notation RequireJS Javascripts historia Prototypbaserat arv Constructor - en subrutin i en klass som skapar nya objekt av klassen Douglas Crockford Nordic.js - svensk konferens där Douglas Crockford med flera talade JavaScript: The Good Parts Haskell Monad Coffeescript - ett av många språk som kompilerar till Javascript. Fast Tobias menade Objective-J och Cappuccino Clojurescript Typescript GWT - Google web toolkit, ramverk som genererar webbgränssnitt från javakod Swing - gränssnittsramverk för Java Dart Notch jobbar på Doom i Dart Dartium Chromium WebGL asm.js WebKit FTL JIT IR - intermediärrepresentation, kod som bearbetats av en kompilator men inte omvandlats till maskinkod Kodsnack kommer att delta i Øredev 2014! Kom och säg hej, kom tidigt och få en tröja! Brittiska jungfruöarna Recensera oss gärna i iTunes Windows 10-presentationen Utvecklarförhandsversionen av Windows 10 Modern UI (tidigare känt som Metro) Många känner av windowsversion på dåliga sätt i sin kod Windowsversionsnummer Webbläsaridentifikationssträngar Feature detection - att kontrollera om funktioner man vill använda i sin kod finns innan man använder dem. Tas ofta upp i samband med webbutveckling, där man bör känna av funktioner istället för att - till exempel - göra antaganden utifrån webbläsarens identifikationssträng Meddelandeskickande och svag länkning Vi snackade Python 2 och 3 i avsnitt 53 - Gör en Python 5 Perl 5 och Perl 6 Windows ME Windows NT Windows vista PHP hoppar över version 6 MSI - installationssystem för Windows CoreOS - linuxdistribution avsedd för stora servermiljöer TeX versionsnummer närmar sig pi Qt creator Semantic versioning - versionsnummer med tydligt definierad innebörd less SHA-1 Safari - Apples webbläsare Yosemite - Mac OS X 10.10 Longhorn - Windows vista Windowskodnamn Chicago - Windows 95 Blackcomb - Windows 7 Ubuntukodnamn
Kodsnack 70 - Modern alkemi
Vi snackar säkerhet. Fredrik och Tobias har varit på endagarssäkerhetskonferensen Next generation threats 2014 och vi diskuterar utifrån konferensens innehåll säkerhet, integritet, malware och kryptering. Som avslutning snackar vi om det nyupptäckta Shellshock-problemet med Bash. Diskutera gärna avsnittet på Techworld! Länkar Techworld, som vi samarbetar med Next generation threats 2014 Christopher Soghoyan ACLU - American civil liberties union NSA Edward Snowden Apple och integritet Daring fireball - FBI and Police Departments Endorse Apple’s Full Device Encryption Power of defaults Alla iOS-enheter krypteras Apple har inte nyckeln från iOS 8 och framåt Bitlocker - hårddiskkryptering inbyggd i Windows x86-processorerna Secure enclave - säkerhetskretsen i de senaste iPhone-modellerna Entropi när det gäller kryptografi DRM - digital rights management, tekniker för att misslyckas med att skydda upphovsrättsinnehavares rättigheter, oftast genom att försämra livet för betalande kunder False positives Runa Sandvik Freedom of press foundation Securedrop Wikileaks “NSA proof” Morgan Marquis-Boire EFF Secure domain foundation DNS - Domain name system Marion Marschalek Zeus-trojanen Incident response - att reagera på och hantera säkerhetsincidenter Microsoft security essentials - gratis antivirusprogram för användare av Windows XP, Vista och 7 Zero-day exploit - attack som utnyttjar ett tidigare okänt säkerhetshål Heuristics - erfarenhetsbaserade tekniker för att hitta tillräckligt bra lösningar på problem John McAfee Robin Blokker FRA - Försvarets radioanstalt Moxie Marlinspike Open whisper systems - Moxies organisation PGP - Pretty good privacy, mjukvara för kryptering OTR - Off the record, protokoll för kryptering av direktmeddelandekonversationer Diffie-Hellman - metod för utbyte av kryptografiska nycklar Trevor Perrin Presentation av Moxie Marlinspike om att lösa CA-problemet Bash Shellshock Miljövariabler rm -rf / - terminalkommando som tar bort allt innehåll på hårddisken Apache - populär och öppen webbserver CGI - API mellan en webbserver och program som kan generera innehåll åt den Processer som kan användas för att utnyttja säkerhetsproblemet Första patchen av bash räckte inte Shellshock kan även nyttjas via DHCP POSIX - standardfamilj för kompatibilitet mellan operativsystem Googles project zero Heartbleed - säkerhetshål i OpenSSL som uppmärksammades i april 2014 Matrix Operativsystemet Temple sprintf - c-funktion som skriver formatterad data till en sträng Off-by-one-fel Titlar Frihetssällskapet Inte bara doom-and-gloom-snacket Att inte ha nyckeln gör det väldigt svårt att dela ut den Slentrianextraktion av din data Helt okrypterad i en databasdump Det svåra med säkerhet är att säkerhet är svårt Att kämpa mot sig själv Per definition reaktivt Det kanske är lika bra det De säkerhetsföretag som vill överleva Det vi oroar oss mest för i säkerhetsbranschen VDn har en supersäker telefon Alla nycklar till hela slottet Den som ingen tänker på Ett enkelt problem när man vet vad det är En feature som alla har glömt fanns där Verkligen ett gigantiskt hål En POSIX/Unix-värld När det skrevs så fanns i princip inte internet Såhär rapporterar media om allt Ett käckt namn och en häftig slogan Modern alkemi Koncentrationen skulle vara på topp, eller frustrationen
Kodsnack 69 - Att helt hänge sig till ett ramverk
Tobias och Fredrik snackar javascriptramverk och att försöka hänga med i svängarna på området. Det händer mycket med Javascript, det används till fler och fler saker, det kommer ständigt nya ramverk, själva språket utvecklas och dessutom görs många försök att förbättra eller ersätta hela språket. Vi gör en resa från Sproutcore via Knockout till React och Node. Diskutera gärna avsnittet på Techworld! Länkar Cloudnet sponsrar våra livesändningar Kodsnacks livesändningssida - torsdagar 20:30 är hålltiden IRC - internet relay chat, anrikt protokoll för överföring av textmeddelanden VPS - virtual private server Procera - veckans sponsor Knockout - javscriptramverk fokuserat på databindning Bootstrap Backbone.js Sproutcore MobileMe - Wikipedia, the free encyclopedia - onlinetjänster från Apple vars webbgränssnitt byggdes med Sproutcore Charles Jolley - Sproutcores skapare Cappuccino - webbapplikationsramverk med eget språk Ember.js Sproutcore 2.0 blev Ember i november 2011 MVVM - Model view viewmodel MVC - model view controller Design- och arkitekturmönster Xerox PARC Smalltalk - gammalt och inflytelserikt objektorienterat språk Viewcontroller - kontrollobjekt hårt knutet till en viss vy Databindning i .net jQuery - javascriptramverk för att hantera dokumentobjektmodellen på effektivare sätt Databindningsattributet för Knockout ORM - object-relational mapping React - javascriptramverk med fokus på användargränssnitt Fredrik fick glappkontakt i huvudet vid ungefär 19:45 - problemen han nämner att de stött på var i Knockout, inte i React som han säger. Procera - veckans sponsor Proceras lediga tjänster FPGA Objective-J - Objective-C-liknande språk som används av ramverket Cappuccino Dart - googlespråk som vill vara ett bättre Javascript CoffeeScript - javascriptsuperset C++11 node.js - asynkron servermiljö där kod skrivs i Javascript Grunt och gulp.js - två exempel på bygg- och automatiseringssystem byggda på Node node-webkit Inception - drömfilm från 2011 Asynkron I/O Från Python till Go Go Farväl node.js Den heliga graal Exception Typescript - microsoftsuperset av Javascript Spotify Don Melton - ledde apples utveckling av Safari och Webkit från starten Meddelanden-appen på iOS Kodsnack på Twitter [email protected] Titlar Man kommer ju inte undan det Att helt hänge sig till ett ramverk Javascript, som det stora språk det är Faux-Mac OS X-looken Jag såg ett galet projekt Det börjar bli liksom som Inception Framåtmoment bakom teknikerna Oväntad out-of-band-kommunikation Webbens C Hur mycket Go vill vi ha i vår infrastruktur
Kodsnack 68 - En saga helt utan sedelärande sidor
Fredrik och Kristoffer snackar byggsystem, nya mobiler och utveckling för mobiler. Fredrik talar ut om sina äventyr med Cmake, och vi funderar över hur man får in nya rutiner och lösningar i sina jobbprojekt. Sedan snackar vi om Apples senaste presentation, dess livesändningsproblem, prylarna som presenterades och androidmobilen Oneplus one. Vi snackar också lite om att skripta sin vardag, smarta klockors plats eller avsaknad av plats i våra liv och hur mängden skärmstorlekar och enheter påverkar apputveckling. Avsnittet sponsras av Procera, som bland annat söker skarpa webbapplikationsutvecklare. Diskutera gärna avsnittet på Techworld. Länkar Byggsystem - program som hjälper en att sätta ihop ens program - har vi talat om förr C++ Linux - öppet operativsystem som distribueras i en stor mängd varianter Ubuntu - populär linuxdistribution, framför allt på persondatorer (snarare än servermaskiner) Debian - tidig och populär linuxdistribution Cmake - byggsystem MySQL - populär och öppen databas Glob - bygger en lista av filer som matchar ett visst uttryck, exempelvis alla filer med en viss filändelse i en viss mapp. Xcode - Apples utvecklingsmiljö Cmake kan generera filer för Xcode Länkning av program skapar en enda körbar fil av de många filer som skapas av kompilatorn Precompiled header Visual studio och precompiled headers Grand central dispatch apt-get - kommando för att installera paket på bland annat Debian libdispatch - biblioteket Grand central dispatch bygger på. Har portats till flera andra operativsystem GCC och precompiled headers Clang Precompiled headers och Xcode Att ersätta saker (eller personer) med mycket små shell-skript Applescript - skriptspråk för Mac OS X Service på Mac OS X Fredriks “flikar till Markdown”-skript Markdown - enkelt märkformat för rena textfiler Applescript dictionary beskriver vilka möjligheter en applikation ger via Applescript UI-skriptning med Applescript BBedit - anrik textredigerare för Mac OS X - och dess stöd för skript Acorn - bildbehandlingsprogram för Mac OS X - och dess stöd för skript Gus Mueller JSTalk - alternativt skriptspråk för Mac OS X Javascript och skriptande i Yosemite (Mac OS X 10.10) TV truck schedule - bilden vi alla fick se när sändningen strulade Videoströmmen av Apples presentation Artikeln om varför livesändningen gick dåligt - ifrågasatt av folk med kunskap Akamai CDN - content delivery network - system av utspridda servrar som kan användas för att snabbare leverera data till slutanvändare Tommy Krul - killen med den häftiga sjalen Super evil megacorp utvecklar spelet Vainglory Iphone 6 och 6 plus Apple watch Watchkit - Apples ännu inte släppta ramverk för att utveckla olika typer av appar för Apple watch M7 och M8 - kretsar i nyare modeller av Iphone som registrerar rörelse Den magnetiska laddaren för Apple watch Pebble - smart klocka Galaxy gear - Samsungs familj smarta klockor E-ink - skärmteknik som ser ut som bläck på papper och som (i många versioner) inte kräver ström för att visa en bild Dick Tracy Oneplus one - stor och välgjord androidtelefon Hur skärmen renderas på Iphone 6 plus Skärmrendering på retinamacar Iphone 6 plus i landskapsläge Rykten kring “Ipad pro” Square Apple pay - nyss presenterat system för att betala med applemobiler Izettle GB glace Swift är nu 1.0 Cocoa - Apples övergripande ramverk för Mac- och IOS-utveckling Saker Apple släppt som öppen källkod Block för C libimobiledevice - linuxbibliotek för att prata med Iphone Cyanogenmod - androidbaserat operativsystem för mobila enheter Android 4.4 Android L Androids fula progress bar - Video som visar den fula progressbaren (och en ersättare) Alien Dalvik - virtuell maskin använd av bland annat Jolla för att köra androidapplikationer Dalvik - Androids virtuella maskin. Ersatt av ART från och med Android L Bittorrent sync - decentraliserat system för filsynkronisering, lite som Dropbox fast bara mellan datorer du delar din information med Anpassning för olika skärmstorlekar och upplösningar på Android Humble bundle - köp spelpaket och ge pengar till välgörande ändamål Double fine - spelutvecklingsstudio Brütal legend Nexus 7 - Googles sjutumsplatta HTC Desire Z - Kristoffers första Android-telefon Launchers för Android - programmet som visar enhetens huvudvy och startar andra program Quasseldroid - IRC-klient till Android Kodkata - övning för att bli en bättre programmerare genom träning och upprepning Fontrendering på Android Chet Haase Filthy rich clients - bok om att skapa fräcka gränssnitt med Java Massive - malmöbaserad spelstudio World in conflict - realtidsstrategispel från 2007 TAT - The astonishing tribe - malmöbaserad designstudio som köptes av Blackberry 2010 Blackberry 10 - Blackberrys senaste operativsystem för mobila enheter Androids 2D-grafik har haft stöd för hårdvaruacceleration sedan 3.0. Near-field communication - NFC - trådlös kortdistanskommunikationsstandard
Kodsnack 67 - Dels plattformsberoende och dels hemsk
Vi börjar med lite uppföljning kring trådning. Sedan snackar vi Markdown, “standard”-markdown (som redan hunnit byta namn två gånger efter sändningen och numera heter Commonmark) och standarders vara eller icke vara i allmänhet. Sedan snackar vi utveckling för mobilplattformar. En app vill man ju gärna ha, men man vill ju också hemskt gärna finnas tillgänglig på mer än en plattform utan att behöva skriva och underhålla nästan likadana hjul flera gånger. Korsplattformsramverk, appar speciellt för en plattform och webbapplikationer har väldigt olika för- och nackdelar, så när ska man välja vad? Avsnittet sponsras av Procera, som bland annat söker skarpa webbapplikationsutvecklare. Detta avsnitt av Kodsnack spelades in och sändes live, och vi siktar på att fortsätta sända live framöver. Torsdagar 20:30 är den vanliga tiden, och precis som alla bättre program är man mer än välkommen att delta i chattrummet via sin IRC-klient eller direkt på vår livesändningssida. Vi sänder vår eviga tacksamhet till Cloudnet som sponsrar livesändningarna med virtuell hårdvara! Diskutera gärna avsnittet på Techworld. Länkar Cloudnet VPS - virtual private server Kodsnacks livesändningssida - torsdagar 20:30 är hålltiden IRC - internet relay chat, anrikt protokoll för överföring av textmeddelanden Procera - veckans sponsor Förra veckans avsnitt om trådning Blogginlägg om multitrådning Lås Semafor Paper om att lås inte fungerar som man tror När allt man har är en hammare ser allting ut som en spik Standard markdown - redan omdöpt två gånger, numera Commonmark Markdown John Gruber - känd för att skriva om Apple och närliggande ämnen Daring fireball - John Grubers blogg Perl 6 - programmeringsspråk som fortfarande är under utveckling Specifikationen för Commonmark IEEE Andra varianter av Markdown OCD Restructured text - textformat som främst används dokumentation av Python ASCIIdoc W3C - World wide web consortium, skapar och publicerar standarder för HTML och intilliggande tekniker SOAP Ada GCC XBMC Kodi Procera sponsrar veckans avsnitt ISP - internet service provider - internetleverantör Lediga jobb på Procera Angular Backbone Ember D3 Push notification QT-SDKt numera för Android och iOS Swing - UI-ramverk för Java WebOS QML - märkspråk för att beskriva användargränssnitt Kodapor på Facebook Xamarin låter dig utveckla appar för många plattformar i C# Phonegap låter dig bygga mobilappar med webbteknik Titanium API - application programming interface Android studio - utvecklingsmiljö för Android Eclipse - utvecklingsmiljö för Java, med mera Xcode - Apples utvecklingsmiljö IntelliJ Lediga jobb på Procera Cloudnet Titlar Om man tror att man vet hur en semafor fungerar så har man fel Vill man skriva sina program i Perl idag så får man det De hade ju kunnat undvika problemet så lätt Ordningsmänniskan i en som har tagit över totalt En dålig fåraherde Man har dött under sin egen tyngd Känner du att du fastnar i långa, stora standarder ibland En kommittés våta dröm Implementationer istället för standarder Den fanns på papper innan den fanns som kompilator Backup i arga samtal mellan företag En stor del av internet är överens Det såg ju ut som hej kom och hjälp mig Dels plattformsberoende och dels hemsk En A-klassapp Vi behöver Standard swift på Android Ganska dumma klienter Det är ett API som är lösningen Man skojar inte ens bort det Segt som smör Standardkodsnack
Kodsnack 66 - Ju fler lås du använder desto sämre är ditt liv
Vi snackar trådar och utmaningarna i att försöka bygga program som gör flera saker på en gång. Vi drar paralleller mellan tråd- och minneshantering, ett annat område som också är både enklare och svårare än vad det först kan verka. Vi nämner några olika modeller för trådhantering och kommer in på att de verktyg man har inte bara påverkar hur man hanterar flera saker samtidigt utan också när och om det över huvud taget passar att göra det. Avsnittet sponsras av Procera, som bland annat söker skarpa webbapplikationsutvecklare. Diskutera gärna avsnittet på Techworld Länkar Tråd - en fristående sekvens programinstruktioner Parallellprogrammering - när flera instruktioner utförs samtidigt Flerkärninga processorer - i grund och botten flera processorer förpackade i ett paket Asynkron IO - in- och utmatning som låter annat arbete pågå samtidigt som in- och utmatningen Select-loop - Intels core-processorer The free lunch is over - artikel från 2004 som hävdar att utvecklingen tvingar oss att på allvar lära oss programmera och tänka i samtidiga processer. Gratislunchen tidigare var att man kunde förlita sig på att datorernas utveckling automatiskt skulle göra ens program snabbare över tiden Playstation 3-arkitekturen Xbox 360-arkitekturen Playstation 2-arkitekturen var speciell men inte multitrådad eller flerkärnig på något klassiskt sätt Moores lag - tumegeln att antalet transistorer i integrerade kretsar (oftast använt med avseende på processorer) ungefär fördubblas vartannat år Erlang - språk utvecklat av Ericsson för att skapa distribuerade och feltoleranta system. Stödjer även att uppgradera eller byta ut kod utan att stoppa systemet Fork - anrop som skapar en fristående kopia av en process Unix socket - ett sätt för processer på samma operativsystem att utbyta data Multitrådning i Java POSIX-tråd-API:et C++ 11 och trådar Minnesbarriärer (memory barriers) tvingar kod att köras i en viss ordning Meddelandekö Synkronisering Lås Trådrace Stack trace Kostnader i att växla tråd Avsnittet om uppdatering av Plex SHA1-hash Trådpool Oföränderlig data - data som inte kan förändras efter att den skapats BSD - familj av Unix-lika operativsystem JVM - Javas virtuella maskin Vi snackade nyss om att det är arbetstagarens marknad för utvecklare just nu Procera networks) - veckans sponsor Procera söker webbapplikationsutvecklare, bland annat Ember Backbone Node Grand central dispatch - applelösning för att förbättra och förenkla hantering av trådar och samtidighet Reference counting libdispatch - biblioteket på vilket Grand central dispatch bygger Block i C Anonym funktion Go Goroutin Kanal - kommunikationsväg mellan goroutines Transaktionellt minne Clojure Communicating sequential processes IPV6 - senaste versionen av internetprotokollet OpenMP - API för multiprocesshantering med delat minne på många olika plattformar Fortran Erlangs processmodell Futures Std::future i C++ 11 Std::promise Task-klassen i .net Node.js Scheme Continuation-passing style pthread_create Manuell minneshantering Trådhantering i Python Trådhantering i Ruby Trådhantering i Perl Pypy Multiprocessingpaketet för Python Map-funktion - funktion som tillämpar en funktion på alla element i en lista och returnerar en lista med resultat
Kodsnack 65 - Den andra dåliga idén
Vi snackar om att uppdatera sina applikationer, hur Tobias uppdaterat Plex och problem med installationsprogram. Tobias tipsar om Pytest och berättar hur han förbättrat uppdateringshanteringen. Tobias avslöjar häftiga trick man kan utföra när man vill uppdatera appar på Mac utan att behöva ladda ner varenda fil igen. Sedan pratar vi om kod skrivern för forskning och kommer in på att värdera bra struktur på koden och allting kring den - sådant som vi som kodhantverkare värderar högt men kanske inte alla som skriver kod. Problemen i STL får avrunda. Diskutera gärna avsnittet på Techworld Länkar Vi pratar så lite om Microsoft I am Groot Plex autouppdateringsinfrastruktur Plex Home Theater Deltauppdatering - uppdatering i vilken man enbart hämtar det som ändrats, istället för precis allting. Ett binärdelta innebär de rena och råa binärdataändringarna i varje fil, istället för exempelvis varje ändrad fil i sin helhet Bsdiff/bspatch Testsvit - en uppsättning tester Pytest Foo och bar - nonsensnamn som (allt för) ofta används i exempelkod Fixture Decorator Nose Jenkins Poppa stacken - ta bort och returnera det översta elementet i högen Windowsregistret - Windows centrala databas för inställningar Kodsignering av applikationer på OS X DMG - disk image, skivavbild, filformat Apple använder för att representera monterbara enheter .deb och .rpm - Linuxdistributionerna Debian och Red hats filer för distribution av mjukvarupaket Windows installer - .msi WIX - Windows installer XML SOAP OSGi - ett “modulärt system och en tjänsteplattform” för Java Byggare Bob - vårt avsnitt om byggsystem TAR - anrikt filformat och program för datalagring Blizzards installer Markstrid i asien… - Citat från Princess Bride The worst API ever made Historien bakom Direct3D Direct X 12 - Senaste versionen av DirectX Rendermorphics - Tillverkaren man köpte Direct 3D av Apples installationsinfrastruktur One little package of hate - Edge cases avsnitt om Apples installationssystem Resursagenter High Availability-kluster libvirt 20 000 rader kod (i libvirt) Xen och KVM VMWare LXC BSDiff-algoritmen Airmech-tillverkarnas fork av BSDiff UML-diagram används för att modellera och visualisera systemdesign Lua - språk bland annat populärt för högnivålogik i spel Game Engine Architecture Frostbite) Unreal-motorn Unity EA grundades år 1982 EASTL Koncept i C++ - som inte finns export i C++ - nyckelordet som bara en enda kompilator lyckades implementera Map i STL std::map.find - returnerar iterator>
Kodsnack 64 - Att gå till jobbet är någoting nytt
Vi börjar med att snacka om pendling och går därifrån vidare till kontor, i vilken arbetsmiljö man får mest gjort och varför man som arbetande inom ett område med stor efterfrågan ens finner sig i att jobba i mindre bra situationer. Sedan diskuterar vi hur uppskattade utvecklare faktiskt är utifrån en nyligen utkommen artikel kring hur man framställer sig vid intervjuer. Diskutera gärna avsnittet på Techworld Länkar Kodapor på Facebook Inlägget och diskussionen om pendling Kista Fridhemsplan Kungsholmen Sundbyberg Vilhelmina Stratiteq söker folk - rekryterar ingenjörer bland taxichaufförer How the other half works - artikeln om mannen som ändrade framtoning på sitt CV Massive - Malmöbaserad spelstudio
Kodsnack 63 - Lätt att köra fast i
Tobias och Fredrik går igenom lyssnarkommentarer på de senaste avsnitten. Vi tar upp diskussionen om att lära sig ett språk kontra att lära sig ett språk tillsammans med ett stort ramverk. Det är ofta stor skillnad på att lära sig ett språk i sig och att lära sig ett språk tillsammans med ett eller flera ramverkför olika ändamål. Kopplat till diskussioner om att våga lägga ner projekt snuddar vid problemen med upphandlingar och försök att skapa detaljerade specifikationer innan man utvecklar någonting. Avslutningsvis snackar vi lite kring operativsystem och bekräftar kritiken att hela panelen har dålig eller ingen koll på Windows och Microsofts plattformar. Vill just DU vara med och föra in mer Microsoft i Kodsnack? Hör av dig! Diskutera gärna avsnittet på Techworld Länkar Techworld Theswedes inlägg om PHP - på avsnitt 58 - Bara statisk HTML om nya kodsnack.se och dess teknik HHVM - Facebooks virtuella maskin för PHP och Hack PSR - standarder för att homogenisera utveckling i PHP PHPs inbyggda webbserver - finns från och med version 5.4.0 DBG - debugger för PHP GDB - GNU-projektets debugger. Fungerar med ett stort antal språk LLDB - debuggern som används av bland annat Xcode för språken i C-familjen node-inspector - lösning för att debugga Node.js med Chromes utvecklingsverktyg Laravel Ruby on rails - webbramverk för Ruby Hibernate - javaramverk för att representera objektmodeller och spara dessa i relationsdatabaser Core data - representerar, hanterar och sparar din datamodell på Apples plattformar Foundation och UIKit - centrala Objective-C-ramverk från Apple. Det förra för alla Apples plattformar, det senare för gränssnitt på iOS Composer - Pakethanterare för PHP. OBS: vi hade fel i avsnittet, Composer fungerar för PHP generellt och är ingenting specifikt för Laravel Hugo - programmet vi använder för att statiskt generera kodsnack.se jQuery - ett av de större ramverken för att underlätta … det mesta … i Javascript [Kodsnack 60 - Nu måste jag stämpla in och vrida på kugghjulen]() - om att våga lägga ner projekt med mera Kommentarer på avsnitt 60 Farbror Svens kommentar PUST - Polisens utskällda, dyra och skrotade försök till nytt IT-system OPS-upphandlingen - Nya Karolinska Solna Vattenfallsmodellen - att utveckla saker i steg som följer linjärt på varandra Fail-fast - Wikipedia, the free encyclopedia - filosofi kring felhantering att det är bättre att fallera högt och tydligt än att försöka hantera fel i det tysta Sunk cost fallacy - känslan att något automatiskt är mer värt för att man redan plöjt ned resurser i det Markus Klyvers kommentar Myrans svar på Markus kommentar DeltaJesus kommentar Avsnittet om operativsystem och dess kommentarer Sluta ljugs kommentar IIS - Internet information services - Microsofts webbserver Windows 8 Kopplingen mellan tangentbordets knappar och vad som visas på skärmen (här med fokus på Linux) Fönsterhanterare - programmen som hanterar och visar det som faktiskt dyker upp på skärmen Steam Kommentardiskussion kring huruvida macanvändare har gjort ett mer aktivt val och vad det kostar @kodsnack och [email protected] @bjoreman och @tobiashieta
Kodsnack 62 - En ideologisk fråga
Kristoffer och Fredrik snackar om operativsystem, hur vi upplever dem, vilka vi använder och föredrar och vad som egentligen är intressant för oss. Vi snackar om vad vi vill ha och varför och kraften i att kunna programmera sin egen miljö. Skillnader i hur Apple och Microsoft behandlar utvecklare. Fördelen för OS X och Linux att folk är där av eget val. Jämförelsen OS X kontra Windows och iOS kontra Android. Varför det inte utvecklas mer för Linux. Länkar Operativsystem - programmen som startar, kör och hanterar alla andra program i din dator Mac OS X Apples operativsystem för persondatorer Windows XP - det senaste Windows Fredrik använde på heltid Linux - fritt (eller åtminstone friare) operativsystem skapat av Linus Torvalds Unix - stor familj av operativsystem vars allra första version släpptes av Bell labs 1973 POSIX - en uppsättning standarder för att få kompatibilitet mellan operativsystem Bash - mycket spritt terminalprogram Windows kommandoprompt - många windowsversioners version av terminalprogram Powershell - Microsofts modernare kommandorads- och automatiseringsmiljö Applescript - skriptspråk för Mac OS find - unixprogram för filsökning Grep - unixprogram för sökning i filer efter matchande text Visual studio - Microsofts utvecklingsmiljö Red hat linux - linuxdistribution Massive entertainment - svensk spelstudio Steam - Valves spelförsäljnings- och distributionsplattform Xbox - Microsofts första spelkonsoll OpenGL OpenGL i Mac OS X Input lag Input lag i Mac OS X - något många seriösa spelare funderar över Låglatensskärmar - något många spelare är intresserade av Direct X - Microsoft-APIer för spel och multimedia DOS - Disk operating system, egentligen en hel familj av operativsystem Autoexec.bat - fil som automatiskt körs när DOS startar Hired guns - rollspel först släppt till Amiga, sett ur första person och för upp till fyra spelare samtidigt Amiga Workbench - det grafiska gränssnittet för Amiga OS Developers developers developers Micrsofterbjudanden för studenter som vill utveckla Appleerbjudanden för studenter som vill utveckla? Stygga verktygsfält för webbläsare iOS app store - Apples mjukvarubutik för iPhone och iPad Panic - liten och känd oberoende utvecklare för Apples plattformar. Finns det motsvarigheter på microsoftsidan? Steam machine - Valves linuxbaserade spelmaskin The year of Linux on the desktop Microsoft släpper Roslyn - kompilatorplattformen för .net - som öppen källkod Satya Nadella - Microsofts nye chef Azure - Microsofts molnplattform Cocoa for web services - om tanken att skapa fler generella lösningar för det vi behöver på våra servrar Amazons molntjänster
Kodsnack 61 - Det blir inga landskap, det blir webbservrar och sliders
Fredrik och Kristoffer firar årets varmaste dag med att snacka kablar, kaffe och koffein. Sedan snackar vi lite mer om Kristoffers minecraftinspirerade sommarprojekt, problemen kring att generera intressant och varierad terräng för sitt spel och svårigheterna för spel med öppna världar att lyckas leva upp till sina löften. På slutet lite om Swifts nyligen presenterade åtkomstmodell och vad vi tycker om den. Diskutera gärna avsnittet på Techworld Länkar Lightning Dr Pepper Jolt cola Fulcola - testar coladrycker av de flesta slag Vilnius - Litauens huvudstad Fritz-kola Volt cola Japanska gitarrer Femtiokilometerslopp Gongfu-teceremoni - små kannor, små koppar, mycket varmt vatten och flera bryggningar A/B-test Te - bra för tänderna? - Tandläkaren säger ja... Te - dåligt för tänderna? - Expressen säger nej? Te - bra för munhälsan! - ...enligt tandläkare? Rooibos Kafferostning Kaffesubstitut Cikoria Pu-erh Minecraft Vilda västern-stenformationer Kinesiska landskap med träd på toppen av berg Bret Victoriga gränssnitt JSON Jakrakning RTS - realtidsstrategispel Ultima underworld Goblin Skyrim Sid Meier's pirates! Elite Wing commander privateer Wing commander Voxel Quake Sandmandalas Peer-to-peer No man's sky No man's sky-trailer Spore - gudaspel från 2008 Wil Wright - amerikansk spelskapare Asteroids Black & white - gudaspel från 2001 Peter Molyneux - brittisk spelskapare Normalmappning Swifts åtkomstmodell Gos åtkomstmodell - "public" motsvaras av stor bokstav Apples swiftblogg const i C++ const_cast
Kodsnack 60 - Nu måste jag stämpla in och vrida på kugghjulen
Fredrik och Kristoffer snackar om att ha förebilder, om att skeppa saker och om den kanske överdrivna tonvikten kring att skeppa. Om varför "övergivna" projekt faktiskt inte alls är något negativt utan bara något att vara glad och tacksam för. Det är lätt att imponeras över de som kan brinna för och fokusera på en enda sak, men vi är inte alla sådana personer. Koppling mellan stresskänsla och intresse och att kunna inspireras istället för att tryckas ned av folk som kan mer än en själv på ett område. Mot slutet blir det lite snack om OpenGLs märkliga utveckling till att bli mer hårdvarunära och charmen i när folk verkligen går till botten med och lär sig utnyttja precis allt i en maskin. Länkar PSA1 - Kristoffers nya mikrofonstativ Røde - mikrofontillverkare Statisk typning Litauen Litauens bredbandstäckning - "In terms of household penetration, the dominant fiber nation remains Lithuania, which already has 100% coverage of FTTH and over 31% of homes connected to fiber." Matt Gemmel följer upp med egna tankar utifrån Ed Finklers artikel som vi diskuterade i förra avsnittet Hacker news WWDC - Apples årliga utvecklarkonferens John Carmack - storhet inom 3D-motorer för spel Douglas Adams ville vara John Cleese Silmarillion - Tolkiens huvudprojekt Cristopher Tolkien Donald Knuth Literate programming Hello world podcast - många intervjuer med programmerare och hur de börjat Casey Liss - en tredjedel av Accidental tech podcast och något överraskad av det jobb som kan komma med att släppa öppen källkod Accidental bot Caseys showbot för ATP Clippy - den gemformade assistenten som irriterat folk i många versioner av Office Newspeak Pull request Kodsnack på Github - om du vill föreslå ändringar, tillägg eller annat på webbplatsen, gör begäran mot site Minecraft OpenGL Immediate mode Vertex Normal Matrismultiplikation Unity Unreal engine Metal - Apples ramverk för lågninvå-3D Arkitekturen i Playstation 2 Baldur's gate: dark alliance - actionspel för Playstation 2 som hade helskärmsantialiasing Commodore 64 på 64 minuter Guy Steele om att programmera med hålkort, bland annat Perlin noise Simplex noise Elite RTS - realtidsstrategi Command & conquer: tiberian sun Voxlar - volympixlar Brütal legend Mac mini (mitten av 2011) Full throttle Psychonauts Tim Schafer kodsnack.se [email protected] Kodsnack på IRC Enter
Kodsnack 59 - Lära sig nya saker eller att bara skeppa
Varför snackar vi inte mer Microsoft? Efter kommentarer från lyssnare diskuterar vi varför vi inte pratar mer om andra ämnen än vi gör, lite om filosofin bakom hur vi gör Kodsnack och bjuder in alla att höra av sig till oss. Vill du sponsra Kodsnack? Vill du vara gäst i Kodsnack? Vill du tipsa oss om något?Hör av dig! Vi läser och tar till oss av all återkoppling vi får. Sedan snackar vi om hur utvecklingen går framåt. Det händer hela tiden nya saker. Blir det vi har lärt oss omodernt och oanvändbart? Behöver man hänga med i varje ny trend för att fortsätta göra nytta? Vilken typ av utvecklare är du? Vi snackar växelverkan mellan jobb och fritid när det kommer till att lära sig nya saker och att hitta den linje som passar en själv mellan pragmatism och att lära sig något nytt. Länkar Kommentaren om att vi inte har fler perspektiv IKEA-design rakt av - avsnittet där vi pratar Microsoft och Windows medIris Classon Förslaget att döpa om oss till Appsnack Roslyn - .nets numera öppna kompilatorplattform Typescript - utbyggnad av Javascript som kompilerar till Javascript The developer’s dystopian future - artikel om att hänga med i utvecklingen som programmerare Ed Finkler Kommentar på De stora spektaklen - avsnittet om konferenser - av abc…åäö The humans of New York Bootstrap - ramverk för att bygga flexibla webbplatser Node.js - javascriptbaserad serverplattform Marco Arment - utvecklare av iOS-applikationer Angular JS - javascriptramverk för webbapplikationer Web objects - applikationsserver ursprungligen skapad av Next och som fortfarande driver Apples webbutiker Att lära sig gå - ett av våra tidigare avsnitt på ämnet Go Manuell minneshantering Core dump Kommentarerna kring Lisp och vad som är ett programmeringsspråk Novellen Tobias läste med dystopisk framtid Cobol - programmeringsspråk designat 1959 Matrix - stilbildande science fiction-film från 1999 Warhammer (fantasy) - fantasyvärld och ett flertal spel som utspelar sig i densamma Warhammer 40000 - figurslagspel i en mycket dystopisk framtid Tech priest Marco Arments podcasts - Accidental tech podcast och Build and analyze (numera nedlagd) C++ 11 - den senaste C++-standarden C++ 14 - nästa standard för C++
Kodsnack 58 - Bara statisk HTML
Kristoffer och Fredrik snackar om den nya inkarnationen av kodsnack.se och tekniken bakom. Vi följer också upp kring Lisp och lyssnares rättelser av vad vi sagt. Lisp är mer maskinnära än man kanske tror. Vi patar program som genererar statiska webbplatser och deras nytta både att använda och bygga. Mot slutet blir det uppföljning om och minnen av PHP blandat med lättnaden i att generera sin webbplats statiskt och alla bekymmer man slipper genom att göra så. Länkar Squarespace Markdown - program och syntax för att generera HTML från dokument i ren text Kodsnacks avsnittsanteckningar på Github Export från Squarespace Wordpess - populärt bloggverktyg FLAC - Free lossless audio codec Squarespace på Twitter Slack - chatt med mera för arbetsgrupper Libsyn - plattform för att publicera poddradioprogram Libsyns API Auphonic Statisk webbplats Snack tidigare om Github-monokultur VPS - Virtual private server Beautiful soup - pythonbibliotek för att utvinna data ur exempelvis webbsidor RSS - Standard för publikation av nyheter eller annat innehåll från webbplatser Hugo - statisk webbplatsgenerator skriven i Go Jekyll - populär statisk webbplatsgenerator Hyde - Jekyll i Python Pelican Restructured text ASCIIdoc Spanskans utbredning i USA Disqus Kommentarer och diskussion på Techworld kring Lisp Ord - Den naturliga dataenheten i en viss processordesign cons-cell Templates-biblioteket som följer med Go Kodkata Magneto - Don Meltons generator för statiska webbplatser Ruby vill göra programmerare glada ASP - Active server pages - tidig microsoftteknik för dynamiska webbplatser CAPTCHA Nya toppdomäner Rapportera fel i anteckningar eller avsnitt här
Kodsnack 57 - Utvecklarnas utvecklarkonferens
Vi tar hjälp av riktiga experter för att försöka bearbeta intrycken från WWDC. David Rönnqvist, Joachim Bengtsson och Johan Larsson pratar förbättringar för utvecklare, känslan av ett nytt Apple och förstås en hel del Swift. Varför skrev Apple ett eget språk, vilka är våra favoritaspekter av språket? Vad mer kan Apple göra för att förbättra App store för utvecklare? Länkar Joachim Bengtsson (@nevyn) David Rönnqvist (@davidronnqvist) Johan Larsson (@kottkrig) Lookback - se hur folk faktiskt använder din app Leopard - Mac OS X 10.5 Core animation - appleramverk för att animera gränssnitt Scene kit - appleramverk för 3D-grafik 3D graphics with Scene kit - Davids bok om Scene kit Cocoaheads Stockholm Slashat - sveriges största teknikpodcast Slashat-appen på Github Johan på Github WWDC 2014 Iphoneintroduktionen 2007 Back to the Mac-eventet 2010 WWDC 2013 - öppningspresentationen Healthkit Homekit iWork - Apples svit av produktivitetsapplikationer Word on the street: The truly big stuff did not leak. - John Gruber före WWDC 2014 iWatch - klockan det länge ryktats att Apple utvecklar Yosemite - 2014 års version av Mac OS X Nya glada Finder Swift - Apples nya programmeringsspråk Extensions - Apples lösning för att låta applikationer på iOS och OS X samarbeta på ett säkert sätt iTunes connect - Apples tjänst för alla som vill sälja saker genom deras butiker (App store, iTunes och iBooks) Nyheter i iTunes connect Testflight - System för hantering av betatester SDK - software development kit Betatestning och gradvis utrullning av nya versioner av appar på Android Notiswidgets Att utveckla tangentbord för iOS 8 Video om extensions - “Creating extensions for iOS and OS X”. Se ävendel två Storage provider - typ av extension som låter en app agera lagrings- och hämtningsplats för filer Jailbreak - att gå runt systemets inbyggda begräsningar för att till exempel kunna installera vilken mjukvara som helst XPC - API i OS X för kommunikation mellan processer Dropbox - tjänst för lagring av filer Box - tjänst för lagring av filer Cloudkit - Apples senaste API för att låta appar lagra data i molnet One drive - Microsofts tjänst för molnbaserad fillagring Utvecklarkeynoten - “Platforms state of the union” iCloud Core data - API för att låta applikationer byggda på Core data synkronisera sömlöst med molnet Photokit - Nytt ramverk för att arbeta med foto och video Craig Federighi basar över både Mac OS X och iOS utveckling Continuity - Fördjupad kommunikation mellan Apples olika enheter REST-API - API som definieras av och arbetar med HTTP-standardens anrop Statisk och dynamisk typning - Två inriktningar till att kontrollera att data i program är av förväntad typ LUA - programmeringsspråk Generic programming - Ger möjlighet att skriva generella funktioner som kan arbeta med många olika typer av data YES och NO - Används i Objective-C istället för 1 och 0 när man arbetar med boolska värden … och .. vid iteration Bakåtkompatibilitet - Swift stöds bara för iOS 7 och framåt, så det går inte att använda för projekt med höga krav på bakåtkompatibilitet Introduktion till Swift Binärkompatibilitet innebär i fallet Swift att ett program kompilerat med en tidig version av Swift fortfarande kommer att fortsätta fungera och köra även när nyare versioner av språket släppts Lattnerpost om binärkompatibilitet på utvecklarforumet (inloggning krävs) Att blanda Swift med C-språken Rubymotion - Utveckla för iOS och OS X i Ruby ARM - familj av instruktionsuppsättningsarkitekturer (säg det fem gånger snabbt) för processorer Debug 33: Ken Ferry on Auto Layout, Passbook, and Understudy - vid 1:14:00 pratas om hur Chris Lattner utvecklar: “[Chris Lattner] has this attitude towards incremental change that I think is very useful which is that: the way that you get something done is that first you figure out where you want to be, which might be somewhere totally different from where you are (and that’s fine) but then you figure out a path to get from where you are to where you want to be and the path is to the greatest extend incremental and you don’t just throw it out and write again because that’s not going to work.” Chris Lattner - Mannen bakom Swift, LLVM och Clang Block - utbyggnad av C för att stödja closures ARC - Automatic reference counting, minneshanteringsteknik som används på Apples plattformar Closures Lattners tweet att det här är en startpunkt WWDC-appen - ett trevligt sätt att se alla presentationer Extensions i Swift - categories i Objective-C, sätt att lägga ny funktionalitet till existerande klasser, strukturer och uppräkningstyper Monkey patching - att förändra körande kod utan att förändra källkoden Playgrounds - interaktiv miljö för Swift Optionals Synchronized NSLock Radar - Apples bugghanteringssystem Dispatchblock Asynkronisitet i C# Gevent för Python Trailing closures Future Att bygga futures ovanpå GCD Fredriks krönika om det nya Apple Hårskämt på WWDC NDA - WWDC i år är väldigt mycket mindre hemligt än tidigare år Debug 33: Ken F
Kodsnack 56 - Små små lösningar på små små problem
Fredrik och Kristoffer snackar om utvecklingen av programmeringskonsten och undrar varför saker inte går snabbare framåt än de gör. Från webben där alla verkar återuppfinna elementarpartiklar om och om igen, via våra likformiga utvecklingsmiljöer till programmeringsspråk där vi återupptäcker Lisp med jämna mellanrum. Famlar vi fortfarande i blindo i väntan på att någon ska upptäcka elden? Vi hinner också med lästips kring Lisp och problemen med de som predikar entydiga och enkla Svar på alla problem. Avsnittet sponsras av Malmö startup studio. Länkar Steve Yegge Den statiskt typade säkerhetsvakten på flygplatsen Execution in the kingdom of nouns Steve Yegges blogg Äldre texter Steve Yegge skrev på Amazon Joe Armstrong - skaparen av programmeringsspråket Erlang Rob Pike Emacs - familj av utbyggbara textredigerare js2-mode - javascriptläge för Emacs som Steve Yegge ligger bakom React - javascriptbibliotek för användargränssnitt Origami verktyg för att skapa gränssnittsprototyper HHVM - Facebooks virtuella maskin för PHP och Hack I'm done with the web Cappuccino 280 slides Objective-J Playgrounds - interaktivt och visuellt verktyg för att experimentera med kod skriven i Swift ECMAScript 4 - versionen som sköts i sank ECMAScript - det "officiella" namnet på språket vilket Javascript är en implementation av Javascript och moduler är ett invecklat kapitel Arguments-objektet i Javascript är "arraylikt" men faktiskt inte en array Swift - nyligen släppt språk från Apple Första klassens funktioner Allt är redan upptäckt - i sluten på 1800-talet. Tyvärr inte sant Memristorer Paradigm - tydligt koncept eller tankemönster Delat minnesutrymme System 6 Windows 3 Amiga Actormodellen för samtidig beräkning STM - software transactional memory Race conditions Läckande abstraktioner - abstraktioner som inte döljer underliggande detaljer väl nog Licensen för HHVM - PHP- och Zendlicenserna till största delen Fall med mjukvarupatent till allmänhetens fördel Tesla motors släpper patent … eller? Uber - taxi för rika Doug Hoyte Let over lambda - bok om Lisp On Lisp - gratisboken Kristoffer rekommenderar att man läser före Let over lambda Instapaper - läsa-senare-tjänst The little schemer - en ovanlig och underbar liten bok om programmering Presentationer av Friedman Ten great books - Steve Yegge CAR och CDR Guy Steele Common Lisp the language Practical common Lisp Rabbit - a compiler for Scheme Tidernas första paper om Scheme VAX - gammal instruktionsarkitektur Netscape - företaget bakom den en gång stora och populära webbläsaren med samma namn W3C - World wide web consortium, arbetar bland annat med standarder för webben Bret Victor REPL - read-eval-print loop Agile och Scrum - populära sätt att filosofera kring mjukvaruutveckling Creativity, inc - bok om Pixar och hur de försökt arbeta för att fortsätta utvecklas och frodas Pixar Objektorienterad design TDD - testdriven utveckling Richard Feynman Cargo cult science Robert Martin SOLID-principerna Tage Danielsson
Kodsnack 55 - De stora spektaklen
Vi snackar konferenser, presentationer och lightning talks. Vad gör egentligen en konferens värd att åka på, hur mycket kod vill vi se i presentationsbilderna och ska folk verkligen få ställa frågor? Sedan övergår vi till att diskutera vad som får programmeringsspråk att slå igenom och om dagens språkexplosion är bra eller dålig samt poängen med att ens hålla reda på hur populära språk är. Är det bra eller dåligt att behöva lära sig fler språk istället för att kunna fokusera på ett eller ett fåtal? Avsnittet sponsras av Cenito. Länkar Pycon.se Vårt första avsnitt om Pycon.se Lightning talk - en mycket kort presentation IRC - Internet relay chat, ärevördigt system för textchatt Kända finska uppfinningar FOSDEM - tvådagarskonferens i Belgien som vill uppmuntra spridningen av mjukvara med öppen källkod XMMS - mediespelare för unixsystem Core foundation - ett av Apples C-API:er för OS X och iOS Alla presentationer från WWDC 2014. Den Fredrik pratar om har nummer 237 och heter "A strategy for great work" Meetup - utmärkt tjänst för att både hitta och organisera alla sorters träffar för likasinnade Øredev - utvecklarkonferens i Malmö GDC - Game developers conference Square Enix - företaget bakom Final fantasy och många andra stora spel Cocoaheads - gruppen för alla intresserade av utveckling på Apples plattformar Football addicts - göteborgsbaserade utvecklare av Forza football Cenito Parsnip - Kristoffers kombinatoriska parser skriven i Python, och bilderna till Kristoffers presentation Emscripten - kompilerar C++ till Javascript Scheme ML OCaml Hashmap i C++ Kernel Moores lag Fredriks text om små datorer TIOBE-indexet över populära språk Assembler - lågnivåprogrammeringsspråk som ofta har en ett-till-ett-koppling mellan instruktioner och maskinkod Visual basic Actionscript - dialekt av Javascrip som främst används i Flash och AIR Go Closure - enkelt uttryckt en funktion tillsammans med omgivande miljö - en closure kan när den anropas nå värden som ligger utanför själva funktionen men som var nåbara när funktionen skapades Pekare i C James Powell som på Pycon.se höll presentationen Generators will free your mind Ruby on rails - stilbildande ramverk för webbapplikationer Perl Jim Weirich - tal om the Y combinator Y combinator Lambdafunktioner Turingkomplett In-out-parametrar - parametrar till en funktion som skickas som referenser och därför kan ändras av funktionen (och därmed returnera ett värde till anropande kod) Actor model - matematisk modell för samtidig beräkning The little schemer - kanske den mest egensinniga bok om programmering som finns Gang of four - Design patterns: elements of reusable object-oriented software Våra anteckningar på Github Markdown - syntax för rena textfiler designad för att dels se bra ut som ren text, dels vara enkel att omvandla till HTML
Kodsnack 54 - De har gått hela vägen till Haskell
Kodsnack 54 - De har gått hela vägen till Haskell Vi snackar om programmeringsspråket Swift och lågnivågrafikramverket Metal - två av nyheterna Apple just presenterat på sin utvecklarkonferensWWDC. Avsnittet sponsras av Malmö startup studio. Länkar Malmö startup studio malmostartupstudio.se/events Apples keynote - presentationen som inledde konferensen och presenterade vad Apple ansåg vara de viktigaste nyheterna WWDC WWDC-lotteriet - Apple lottade ut biljetterna till årets konferens Git bisect SQLite - liten och självpaketerad SQL-databasmotor fsync Plex pass Förrförra programmet - "Femte elementet i en vektor" Hur vi spelar in Kodsnack Våtvara Förra programmet - "Gör en Python 5" Diffie-Hellman-nyckelutbyte Kodsnack på twitter Kodsnack på e-post Andra som berättar om vad som är nytt i iOS 8 och Mac OS X Yosemite Swift - Apples nysläppta programmeringsspråk Avoiding Copland 2010 - John Siracusas artikel från 2005 om att Apple måste skaffa sig ett språk med modern minneshantering Objective-C Smalltalk NeXT Utvecklingen av Objective-C LLVM och Clang Binärkompatibilitet Cocoa - Apples centrala ramverk för OS X och iOS Funktionella språk Lisp ML Haskell Ruby Python Groovy - dynamiskt språk som körs på Javas virtuella maskin Rust Go F# Chris Lattner Headerfiler Moduler för C och Objective-C State of the union-presentationen Alla presentationer från WWDC 2014 Xcode 6 Swift optionals - Hur swift gör det svårare att dereferera null av misstag Maybe-monaden Hibernate - javabibliotek för att översätta mellan objektmodeller och relationsdatabaser Namngivna parametrar Syntaxen för dictionaries i Objective-C tillsammans med den för andra förändringar som skedde samtidigt ARC - Apples modell för minneshantering. Används för både Objective-C och Swift Cirkulära referenser Sätt att läcka minne i Java Erlang Pattern matching Unicode UTF-8 Emoji utf8everywhere.org - propagerar och hjälper dig propagera för att UTF-8 ska användas … ja, överallt Bytekod - kod anpassad för effektiv körning av en tolk eller virtuell maskin Kompilerade språk - språk som omvandlas till någon typ av maskinkod innan de körs clattner_llvm - Chris Lattner på Twitter AngularJS - populärt javascriptramverk Swift playgrounds - Artikel om Playgrounds Read-eval-print-loop - kommandoradsmiljö (oftast) i vilken man kan skriva in och köra programkod och direkt se resultatet Lispmaskiner - datorer byggda specifikt för att ha Lisp som sitt huvudspråk Bret Victor och hans presentationer Light table - utvecklingsmiljö för Clojure, Python och webbutveckling Nyheter i Xcode 6 Metal - Apples nya ramverk för 3d-programmering på iOS Tim Sweeney - grundare av Epic games och utvecklare av Unreal-motorn Ray tracing - teknik för att skapa 3d-grafik Johan Andersson Frostbite - spelmotor först utvecklad för spelen i Battlefield-serien John Carmack - 3d-spelprogrammeringsguru DirectX - API-familj från Microsoft för effektiv hantering av spel och annan media

Kodsnack 53 - Gör en Python 5
Kodsnack 53 - Gör en Python 5 Kristoffer börjar berätta för Fredrik om sina öden och äventyr på svenska Pycon och tar med oss på en resa från datainsamling och bearbetning via kryptomysterier till Python 2 mot Python 3 och problemen med stora omstarter mellan versioner av mjukvara. Python 3 har stora problem med att vara något nytt och annorlunda som skiljer sig så mycket att den stora massan inte har anledning att byta till det. Samtidigt har utvecklarna av språket gått vidare så att ingen gör något alls med det språk folk faktiskt använder. Det finns en risk att man tappar det som gjorde ens skapelse värd att använda när man skriver om den för att bli modernare, mer generell eller vad man nu föresatt sig att göra. Avsnittet sponsras av Cenito. Länkar Pycon.se Fredrik Håård - huvudarrangören av Pycon.se Pycon internationellt Europython Mali Boko haram Bahnhofs datahall - tidigare civilförsvarsledningsplats - under Vita bergen i Stockholm Helena Bengtsson JOIN i databaser - kombinerar poster från flera tabeller Perl Fax OCR - optical character recognition Beautiful soup - pythonbibliotek för att få ut data ur webbsidor och annan mer eller mindre ostrukturerad data Kodsnack 5 - Kanelbullens dag nämnde också Beautiful soup Laurens Van Houtven Rackspace - sysslar med moln och hosting och anställer Laurens Kryptografi Engångsskiffer - teoretiskt perfekt kryptering med problem i verkligheten Diffie-Hellman key exchange Man-in-the-middle-attack Python 2 och Python 3 PyPI - Python package index och pip - ett program för att installera paket Pythons historia Unicode ASCII Indexera över en sträng, i Python 2 och i Python 3 Kenneth Reitz Requests - modul för HTTP i Python, som Kenneth skrivit Perl 6 - den ännu inte släppta versionen av Perl Generatorer - funktioner som genererar data Go - ett språk vi talat om förr Joel Spolsky om Netscapes omskrivning och att skriva om i allmänhet Winamp It really whips the llama's ass Winamp3 Det tycks fortfarande finnas lite liv i Winamp AOL - som var stora förr i tiden Dotcomkraschen Guido van Rossum Kärnutvecklare av Python 3 Python 2.7 blir den sista av Python 2 HTML 5 XHTML XSLT - språk för att omvandla XML-dokument till andra XML-dokument HTTP 2.0 SPDY - Googles nätverksprotokoll som är basen för HTTP 2.0 HTTP/2 considerations and tradeoffs - lång redogörelse med gott om länkar
Kodsnack 52 - Femte elementet i en vektor
Vi snackar problem med C++ och går sedan över till att diskutera kring FTL - Apples nya optimerande steg i Webkits javascriptmotor. Frustrationer ventileras över all tid som lagts på att göra Javascript snabbare och bättre och vissa likheter i situationen för C++ och Javascript noteras. Var lägger egentligen alla smarta utvecklare sin tid? Är det rätt att snabba upp javascript och skriva reklamanalys eller kunde vi göra bättre saker för att förbättra världen? Vi avslutar med kommentarer på vårt förra avsnitt och tar upp vad vi utvecklare har eller inte har möjlighet att säga till om i rekryteringsprocessen. Fredrik har ekoproblem med sitt ljud under de första tio minuterna, men det ordnade upp sig innan han hann säga för mycket. Avsnittet sponsras av Malmö startup studio. Länkar Malmö startup studio Tobias skeppaångest Pycon Sverige STL - standard template library - bibliotek för C++ Erase-remove Iteratorer i C++ Överlagring av funktioner Odefiniereat beteende Bjarne Stroustrup Autopekare - ett försök till atuomatiskt minneshanterade pekare XBMC Länkad lista [Vektor](http://en.wikipedia.org/wiki/Sequence_container_(C%2B%2B%29#Vector) - datastruktur i C++ Malloc debug in OSX Breakpoint på malloc_error_break Xpath LXML för Python Malmö startup studio User experience Evenemang Malmö startup studio ordnar Startup studio Malmö 5 juni Foo café - mötesplats för utvecklare i Malmö AngularJS-seminarie 17 juni Webkit - webbläsarmotor främst utvecklad av Apple Interpreterande språk - språk som inte kompileras (omvandlas till maskinkod) innan körning utan tolkas JIT - just in time - kompilering vid behov, medan ett program körs istället för innan det körs Virtuell maskin Bytekod Buffer overflow - fel där ett program skriver över minne som egentligen ligger utanför det område utvecklaren avsett Java vs. Python - Illustrerar skillnaden JIT-kompilering kan göra. Unladen Swallow - Ett försök att implementera JIT för Python. Pyston - Ett nytt försök att implementera JIT för Python. V8 - Googles JIT-kompilerande javascriptmotor Tracemonkey - Mozillas JIT-kompilerande javascriptmotor Safaribloggen beskriver sin javascripthantering och introducerar FTL-JIT - det nya optimerande och LLVM-backade kompileringssteget för Javascript DFG-JIT - tredje steget i webkits javascriptoptimering Java hotspot - virtuell maskin för Java utvecklad av Oracle JRockit - virtuell maskin för Java numera också utvecklad av Oracle JVM - Java virtual machine - virtuell maskin gjord för att köra java-bytekod LLVM Olika betydelser av förkortningen FTL Intermediate representation - tolkning av programkod som används som mellansteg vid till exempel kompilering eller optimering Deoptimering - att vid behov minska prestanda - för att få korrekt resultat - i kod genom att övergå till en mindre optimerad version Accidental tech podcast 65 diskuterar ämnet ingående Javascripts ursprung Smalltalk - tidigt objektorienterat och dynamiskt typat språk Dart - språk från Google som kan kompilera till Javascript och vill vara ett bättre alternativ till detsamma Jscript - Microsofts "dialekt" av ECMAScript (Javascript) Typescript - ett superset av Javascript utvecklat av Microsoft. Kristoffers arga katt - Den här serien av The Oatmeal beskriver situationen väl. The Homer - bil designad av Homer Simpson Kommentarer på förra avsnittet NP-kompletta problem
Kodsnack 51 - Konsten att skeppa
Kristoffer och Tobias snackar om konsten att skeppa, varför det är så svårt att avsluta och leverera saker och hur det fungerar att skeppa saker i deras respektive arbeten. För- och nackdelar med korta och längre cykler för både leverans av program och internt arbete avhandlas. Varför det är så svårt att tidsuppskatta, och vad händer när uppskattningar och önskningar krockar med verkligheten? Mot slutet kommer vi även in på risken att det går religion i hur man ska göra saker för att det inte finns så mycket rätt och fel i utveckling. Allra sist lite svar på återkoppling vi fått. Avsnittet sponsras av Cenito Länkar Cenito - veckans sponsorer Fredrik hade det bra i solen Men andra har ännu mer utförliga avsnittslänkar Skeppa: att leverera (oftast till slutanvändare) en färdig version av ett program Suse - tilverkare av öppen mjukvara "Maintaina": underhålla, att fortsätta sköta en version av ett program man redan släppt med buggfixar och andra förbättringar QA: quality assurance Diff - verktyg för filjämförelser Scrum - metodik för mjukvaruutveckling Sprint - den grundläggande tidsperioden för utveckling i Scrum Det är svårt att tidsuppskatta Certifieringsprocessen för konsollspel De sista tio procenten tar nittio procent av tiden Att skriva specifikationer Agile Agile är dött Minecrafts utvecklarblogg Cenito - veckans sponsor söker utvecklare. Titta in på cenito.se/jobs! AngularJS är ett populärt javascriptramverk från Google Unity är en motor för 3d-spel Parabel - "en pedagogisk eller moralisk allegori med enkla motiv hämtade från åhörarens vardag" Berättelse om varför det är så svårt att tidsuppskatta Kodsnacks IRC-kanal Programmering är Svårt Accidental tech podcast om att programmering är ett av de mest komplexa yrken man kan hålla på med. Uppföljning i avsnittet efter. Och avsnittet efter det. John Siracusa Testdriven utveckling - TDD - utvecklingsmetodik där man skriver test före koden de testar DHH - David Heinemeier Hansson - skaparen av bland annat Ruby on rails TDD är dött - DHH om testdriven utveckling Snake oil - begrepp för något med tveksamt eller svårbevisat värde Uncle Bob om TDD - Uncle Bob svarar DHH Vim - klassisk textredigerare som kan … allt Emacs - klassisk textredigerare som kan … allt Eclipse Trådar Samtidighet (concurrency) i Go Gröna trådar - trådar som hanteras av en virtuell maskin istället för direkt av operativsystemet Race condition - situation där resultatet beror av ordningen på händelser man inte kan kontrollera Semaforer Singleton Node.js - servermiljö i och med Javascript CSP - Communicating sequential processes Apples arbete med block och dispatchköer för C STM - Software transactional memory - minnesmodell för samtidighet som används av bland annat Clojure Meddelandesystem och meddelandeköer Out of order execution Flume - Bon Iver-låten där uttrycket is all maroon finns med
Ett nytt kapitel
Vi som gör Kodsnack presenterar oss för nya lyssnare och berättar om nästa steg i programmets utveckling. Länkar A 30 minute skip button Kristoffer Grönlund Massive entertainment - svensk spelstudio numera ägd av Ubisoft Suse - tyskt företag som bland annat gör en linuxdistribution med samma namn Kristoffer på Github Flappy beard Programmeringsspråket Python Significant whitespace - när mellanslag, tabb och liknande spelar roll för kodens tolkning Kodformatteringsstrider Pythonstandarden för kodformattering Cocoaheads - intresseförening för Mac- och iOS-utveckling Fredrik Björeman TimeEdit - bygger schema- och resursbokningssystem node.js - plattform för Javascript på serversidan Cocoaheads Göteborg Meetup Tobias Hieta Plex - tillverkare av mediecentermjukvara Go - nytt och intressant programmeringsspråk från Google Första avsnittet av Kodsnack Väldigt nördiga ämnen Kultur kring programmering Techworld Computer Sweden Pressbyrån - säljer papperstidningar och magasin IDG - International data group - stor utgivare av IT-relaterade tidningar Magnus Aschan - chefredaktör på Techworld ASP - Active server pages - gammalt språk för webbutveckling från Microsoft Dotcombubblan Lars Danielsson - journalist på Computer Sweden Systemutvecklingsnyhetsbrevet och Computer Swedens övriga nyhetsbrev Devops - att fundera på sambandet och samarbetet mellan utvecklare och de som fokuserar på drift av system kodsnack.se Kodsnack är @kodsnack på Twitter Techworld är @techworldsweden på Twitter Computer Sweden är @computersweden på Twitter Lars Danielsson är @larsdddd på Twitter Kristoffer är @isallmaroon på Twitter Fredrik är @bjoreman på Twitter Tobias är @tobiashieta på Twitter Magnus är @magnusaschan på Twitter
Error, error, error, långt ner i winsock.h
Kristoffer och Tobias pratar om hur det är att använda Visual Studio i Windows 8 vilket osökt leder in på diskussioner om responsiva IDE-er, fulhack i C++, unit-tester, Gophercon 2014 och mycket annat. Både Kristoffer och Tobias kommer vara på Pycon Sverige, som går av stapeln i Stockholm den 20 - 21 Maj. Kom gärna och snacka med oss i verkligheten! Det här avsnittet av KodSnack sponsras av Malmö StartUp Studio. Unit-test ramverk: gtest och mockning: gmock Typiskt fall av Header Redefinition DrDobbs om C++ och kompileringstider Clang Modules Varför är Go så snabbt på att kompilera? Gophercon 2014 Videor DLL Hell Glen Cook Peter F. Hamilton Mindstar Rising första delen av Greg Mandel triologin Great North Road Neal Stephenson Snow Crash Reamde! Pycon Sverige
Kodsnack 49 - Min första datorrelaterade bok
Vi snackar programmeringsböcker med utgångspunkt från vad Fredrik tycker efter att ha läst Version control with Git. Tobias rekommenderar en bok om Vi och vi diskuterar vad som skiljer en bra bok från referensdokumentation och vilt sökande på nätet. Via en diskussion av C#, Mono och Microsofts mobiler kommer vi slutligen till en diskussion om break, continue, goto och andra farliga saker man kan skriva i sin kod. Avsnittet sponsras av Cenito, som både kan hjälpa dig med dina projekt och gärna hör av dig om du vill jobba med deras projekt. Länkar Cenito Lejonbragden - loppet Fredrik skulle springa Version control with Git Jon Loeliger och Matthew McCullough Octocat - Githubs maskot Gits plumbing-kommandon Git rerere - ett kommando Tobias berättat om tidigare Kindle - läsplatta från Amazon Unit testing - att testa små delar kod individuellt Vi - gammal och populär textredigerare Vi-kommandot . Tillståndsmaskin - en modell för att designa system där man ser systemet som en maskin som alltid befinner sig i ett av en uppsättning tillstånd och som växlar tillstånd efter uppsatta regler Practical Vim - en bok Tobias rekommenderar Principles of object-oriented programming in Javascript Nicolas Zakas Javascript the complete reference - en riktigt tjock bok Javascript the good parts - en riktigt bra bok Structure and interpretation of computer programs - mycket klassisk programmeringsbok som även finns som filmad föreläsningsserie ENIAC - en av de första datorerna The C++ programming language - Bjarne Stroustrups C++-bok C++ 11 C++ minnesmodell C++ 98 Xamarin - miljö som låter dig skriva kod i C# och använda den på många plattformar Augmented reality Microsoft har öppnat källkoden för .nets kompilatorplattform Roslyn Buildkonferensen - microsofts stora utvecklarkonferens TC49 - ECMA-gruppen för bland annat C# Mono) - öppna verktyg och miljöer för .net-kompatibel utveckling Novell Miguel de Icaza - mannen bakom Gnome, GTK och Mono Microsoft Azure - molnplattformen XAML - XML-baserat språk för att definiera bland annat gränssnitt List comprehension i Python Early return - att gå ur en funktion tidigt om något oväntat uppstår Cyklomatisk komplexitet - mått på hur logiskt komplext ett stycke kod är Dijkstra - "Go to statement considered harmful" Techworld - som vi just inlett ett samarbete med Pycon 20-21 maj - pythonkonferens i Stockholm där du kan träffa både Kristoffer och Tobias
Kodsnack 48 - Ragefork
Vi snackar om LibreSSL - OpenBSD-utvecklarnas fork) av OpenSSL, forks av större projekt i allmänhet och vad vi hoppas på som resultat av denna fork. På slutet en diskussion utifrån projektet att översätta gokompilatorn till Go. Kristoffer och Tobias kommer att vara på Pycon i Stockholm 20 och 21 maj (2014) och vill mer än gärna höra av både er som ska vara där och er som har tips på personer att prata med och talare att lyssna på. Länkar Avsnittet på Youtube OpenSSL Valhalla rampage - ren fork av OpenSSL som inte tänker dela med sig av ändringarna Heartbleedbuggen Kodsnack 46 - Korthuset vinlgar - vårt avsnitt om Heartbleed LibreSSL GNU - det Unix-lika operativsystemet som är helt fri mjukvara OpenBSD - BSD-baserat operativsystem som bland annat lägger stor vikt vid säkerhet Fork på Wikipedia OpenSSL använder ibland data ur privat nyckel för att generera slumptal snprintf() - funktion som skriver formatterad text till en buffert FAQ-sidan för OpenSSL Valhalla rampage, frågan om att saker inte bidras tillbaka till OpenSSL Upstream - den eller de som ligger "ovanför" en själv i en kedja av att checka in källkod Diskussioner om OpenSSL i gruppen Kodapor på Facebook Clang och GCC - populära kompilatorinfrastrukturer för C-språk *Ars technica om beslutet att skapa LibreSSL Licensen för OpenSSL - de använder sig av dubbla licenser GnuTLS Friskt storföretagablod till OpenSSL Open source initiative Linux foundation Linus Torvalds är anställd av Linux foundation NSS - Network security services - säkerhetsbibliotek från Mozilla Too big to fail GNUTLS huvudutvecklare Buffer overflow - klassisk bugg där ett program skriver data utanför den buffert det är menat att hålla sig till Go - ofta nämnt programmeringsspråk Rust Web 2.0 Regressionsbuggar - tidigare lösta problem som återkommer. XBMC - mediaspelarmjukvara (utifrån vilken Plex byggs)http://www.plex.tv FIPS - Federal information processing standards Libav - mediebibliotek som är en fork av FFMPEG ECGS - fork av GCC som kom att överta rollen som officell version Subversion - halvgammalt system för versionskontroll CVS - ännu äldre system för versionskontroll Theo de Raadt TV ger en glimt av Theos serverfarm SGI - Silicon graphics - numera nedlagd tillverkare av kraftfulla datorer VAX - instruktionsarkitektur skapad av Digital på sjuttiotalet Att porta gokompilatorn till Go Gophercon - den första konferensen om Go Pypy - pythontolk och just-in-time-kompilator som började som en pythontolk skriven i Python Assembler - lågnivåprogrammeringsspråk, ofta med ett-till-ett-förhållande mellan språket och maskinkodsinstruktioner Steve Wozniak - medgrundare av Apple och ensam designer av hårdvaran i både Apple I och Apple II X86-instruktionssetet är turingkomplett, utan register RISC - designstrategi för processorer där man siktar på hög prestanda genom att använda enkla instruktioner Pycon - pythonkonferens i Stockholm 20 och 21 maj 2014. Åk dit och träffa Kristoffer och Tobias! Och tipsa oss om ni vill att vi pratar med eller lyssnar på någon speciell person!
Kodsnack 47.5 - Man duckar för problemet
Tobias och Kristoffer följer upp avsnitt 47 om Github och Julie Ann Horwath med vad som hänt sedan dess och diskuterar både de inblandade i githubfallets svar, andras reaktioner och hur man kanske borde agera och reagera. Githubs tillkännagivande av företagets egen undersökning efter att Horwath slutade Tom Prestons-Werners bloggpost Horwaths kommentarer via Twitter: "I am not a victim. I'm someone that a company's negligence pushed too far, for too long. I am living, breathing consequence."1 "Hmmm still no mention of the man who bullied me out of our code base because Iwouldn't fuck him. Too popular to be accountable, I guess."2 "Oh excuse me, the recently promoted to lead the engineering team man who bullied me out of our code base."3 Exempel på … "andra sidans" kommentarer och åsikter Facebooks köp av Oculus har vi avhandlat förr
Kodsnack 47 - Internet borde kunna lösa det problemet
Kristoffer och Tobias pratar Github, distributed denial of service-attacker och Githubs dominans som koddelningstjänst. Sedan pratar vi om händelserna kring Github och Julie Ann Horwath. Sist en kort och kärnfull urladdning kring byggsystem. Länkar Github Kristoffers projekt på Github Gits arkitektur Sourceforge Sourceforge och adware Java och Ask toolbar DDOS - distributed denial of service, en överbelastningsattack för att sätta en webbplats eller tjänst ur spel DDOS-attacker mot Github SHA1 Mainline DHT - distributed hash table som används av Bittorrent NSA Popcorn time Savannah - GNUs svar på Github Cluster labs Open Suse iD software på Github Unreal engine 4 på Github Julie Ann Horwath Hennes berättelse på Techcrunch Emacs Githubs respons på Julie Anns redogörelse Brogrammer Eric Schmidt Larry Page och Sergey Brin, kompisarna som grundade Google Gitorious QT - stort applikationsramverk Gitlab - öppet githanteringsverktyg Bitbucket Google code - Gogoles tjänst för koddelande CRM shell Automake Cmake setup.py - distverktyg för Python M4 - makrobearbetningsspråk Makefile Bjam - boosts skriptspråk Gyp - generate your projects Deklarativ programmering - att beskriva vad som ska göra snarare än hur JSON - Javascript object notation, ett format för dataöverföring som är ett subset av Javascript
Kodsnack 46 - Korthuset vinglar
Fredrik och Kristoffer snackar om Heartbleed - den ovanligt allvarliga buggen som nyligen upptäckts i OpenSSL. Därifrån kommer undran varför hela SSL-upplägget med certifikat och rotcertfikat fungerar (snarare inte fungerar) som det gör. Vi hoppas att fler vågar lära sig, experimentera med och rent av utveckla kod omkring kryptering. Och så en del om problemen med att spela in sina diskussioner och höra sig själv i efterhand. Varför det inte decentraliseras mer. OpenSSL - säkerhetsmjukvaran i vilken buggen kallad Heartbleed har upptäckts Bruce Schneier - amerikanskt krypto- säkerhets- och integritetsspecialist Chuck Norris-memes Schneier-memes Heartbleed Schneiers post om Heartbleed - buggen är elva på tiogradiga skalan Schneier om säkerhetsteater på flygplatser Fear mongering - att använda rädsla för att påverka HTTPS Man in the middle-attacker Serien XKCD förklarar Heartbleed Privata nycklar Vad kan man hitta genom att utnyttja Heartbleed? - artikeln jag hittade med de som försökte få ut privata nycklar Googles uppdateringar efter Heartbleed Twitter säger sig vara opåverkade … liksom Facebook Men Tumblr säger byt lösenord … … precis som Github Gotofail Koden för Heartbleedbuggen Heartbeat-meddelande TCP heartbeat Bounds check Den sedelärande historien om Bobby tables - också från serien XKCD Kritik - från 2009 - av hur OpenSSL är skrivet GNUTLS - alternativ till OpenSSL, som hade sin egen bugg helt nyligen. Rotcertifikat Akustikanalys Social engineering - social manipulation, att lura människor istället för att överlista eller hitta hål i tekniska lösningar Zero-day exploit Verktyg för att undersöka om webbplatser åtgärdat buggen Heartbleeder - kod för att testa din sårbarhet Nyheter om Heartbleed i vanliga tidningar DNSSEC - säkring av domännamnsserversystemet Kritik mot DNSSEC Darwinism RSA-kryptering CA - certificate authority - utgivare av certifikat Napster - tidig fildelningstjänst för musik som stämdes ihjäl Bittorrent - känt och välanvänt protokoll för fildelning utan en central server Waste Winamp - klassiskt mp3-spelarprogram Justin Frankel - mannen bakom både Waste, Winamp och Gnutella AOL - medieföretaget som förr i tiden var stora på uppringd internetuppkoppling (helst till AOLs egna lilla inhängnad) i USA OpenSSH - som inte har något med OpenSSL eller Heartbleed att göra Händelser efter inspelning NSA Said to Exploit Heartbleed Bug for Intelligence for Years - artikel som kom strax efter att avsnittet spelades in Bekräftelse att det går att komma över privata nycklar genom att utnyttja Heartbleed
Kodsnack 45 - Din noja för Mark Zuckerberg
Vi talar ut om vår oro och våra förhoppningar kring VR och Facebooks köp av Oculus VR. Länkar Oculus VR - företag som tillverkade VR-headsets Virtual reality Facebook köper Oculus Oculus kickstarter som fick ihop drygt 2,4 miljoner dollar Oculus utvecklarsektion - kräver inloggning Coola saker folk gjort med Oculus SDK John Carmack John Carmack börjar på Oculus VR D3: the mighty ducks E3 - Electronic entertainment expo - mässa för dator- och TV-spelsindustrin GDC - Game developers conference Oculus developer kit 2 John Carmack om strategier för att minska fördröjningar i VR Oculus eget blogginlägg om uppköpet Intervju med Palmer Luckey om köpet Facebook om köpet Mark Zuckerberg Mer öppet och sammankopplat Saker Facebook släppt som öppen källkod Företag Facebook köpt Palmer Luckey - som var VD på Oculus VR Project Morpheus - Sonys VR-headset Glyph - ett möjligt alternativ till Oculus? Inlägg som fångar många av Kristoffers och andras tankar kring köpet En mer positiv syn på saken Myspace Mike Abrash - numera "Oculus chief scientist" på Facebook Atman Binstock - också tidigare Valve-anställd som växlat till att jobba med Oculus Doom - stilbildande actionspel i förstaperson Jolla - finskt mobilföretag Ubuntu edge "koncepttelefon" från Ubuntu som inte nådde Douglas Bowman - designern som slutade på Google efter att ha försökt ändra den blå nyansen Neil Stepenson författare till bland annat Snow crash Metaverse - begrepp för en virtuell delad värld, myntat i Snow crash NSA - USAs nationella säkerhetsorganisation Tidigare investerare i Oculus VR Next - dator- och mjukvaruföretag Steve Jobs grundade och drev 1985 - 1996 Instagram - Facebooks fotodelningstjänst Steve Jobs
Kodsnack 44 - Strandade på en öde ö
Fredrik och Tobias snackar arbetsverktyg; saker, program och tjänster vi inte kan eller vill vara utan när vi kodar. Som grädde på moset en historia om delade pekare i C++ och de där buggarna man bara inte kan förstå att man inte upptäckt för längesen. Länkar Elvatums Macbook air (sent 2010) - Fredriks privata dator Kodsnack 8 - Byggare Bok - allt om byggsystem Cores - processorkärnor Kompilatorer - program som omvandlar källkod från en form (ett språk) till en anann (ett annat språk eller binärkod för en viss plattform) Macbook pro (sent 2011) - Fredriks jobbdator och Tobias sekundära jobbdator 27-tums iMac (sent 2013) - Tobias huvudsakliga arbetsdator Sublime text Eclipse - mycket spridd utvecklingsmiljö för Java (med mera) IntelliJ IDEA - Jetbrains utvecklingsmiljö för Java Xcode - Apples utvecklingsmiljö, främst för Objective-C men även C och C++ Terminalemulator - program som ger en textterminal i ett fönster Z shell - populärt och kraftfullt kommandoskal Solaris - operativsystem från början utvecklat av Sun tcsh - skal som är en utbyggnad av C shell Grep - sökkommando Oh-my-zsh - samling av inställningar, teman med mera för Z shell Git Bash) - skal som är standardvalet på Linux och Mac OS X iTerm2 - terminalprogram för OS X GNOME terminal Windows powershell - modernt skal för Windows från Microsoft Dropbox - filsynkning mellan enheter, som fungerar iCloud - Apples paraplynamn för ett stort antal molntjänster som säkerhetskopiering, foto- och datasynkronisering med mera Bittorrent sync - filsynkning mellan enheter, som … oftast … fungerar QT creator - Tobias favoritmiljö för C++, just nu i alla fall Clang - kompilatorframsida för Objective-C, C och C++ Parsnings- och kompileringsproblemen med C++ LLDB - debugger för LLVM och Instruments - analysverktyg för Xcode Jetbrains - utvecklare av många populära utvecklingsmiljöer för olika språk och plattformar Appcode - Jetbrains IDE för Objective-C-utveckling IKEAS skrivbord Galant i höj- och sänkbar modell Håg capisco - skrivbordsstolen som får Tobias varmaste rekommendationer Firmor som säljer möbler från konkursbon Skrivbord och rullband i förening Fredriks jobbildskärm från Dell 2560x1440 Subversion - ett äldre och mer centraliserat (jämfört med Git) versionskontrollsystem Gits design Gitlab - en klon av Github som finns gratis och går att köra själv Github IBM model M stort, tungt och klassiskt tangentbord som Fredrik gillar Truly ergonomic - Tobias tangentbord Apples trådlösa tangentbord Apple magic trackpad Fredrik om varför han använder trackpad C++ Boost Delade pekare - shared pointer Allokering och deallokering new-operatorn i C++ Stack och heap - minnesareor där man kan lagra saker. Scope - hur länge någonting lever Minneshantering i C const-nyckelordet i C++ Call by reference - att anropa en funktion och skicka in en referens till ett värde istället för en kopia av värdet Reference counting - ett sätt att hantera minne när man skriver program Garbage collection - automatisk minneshantering Operatoröverlagring i C++ Locale - information om datum, tid med mera som är specifik för ett visst land eller en viss region Kodsnacks IRC-kanal - #kodsnack på irc.freenode.net Sex stadier av felsökning John Gruber - skribent i applevärlden och mannen bakom Daring fireball
Kodsnack 43 - Jätteprestanda i kod som gör helt fel grej
Vi snackar spel, buggjakter, buggen i GnuTLS och varför inte fler undersökt säkerhetskod. Strul med ljudfiler gav oss sämre material än vanligt att arbeta med, vi ber om ursäkt om det låter lite burkigt här och där. Länkar Instruments - tråd- och låsvy Instruments time profiler-instrument Tobias debuggar trådar Raspberry pi - öppen dator på ett kretskort plockstat Litet exempel på data från plockstat OS X localtime_r - tidshantering där alla delar ett lås Diskussioner om tidsdragning på 10.9 ntp - network time protocol Xcom: enemy unknown och klassikern UFO: enemy unknown The walking dead Telltale games Broken age - ett nytt äventyrsspel i klassisk peka-och-klicka-stil från Tim Schafer. Ytterligare några av Fredriks tankar om Broken age. Titanfall FPS - first-person shooter Counterstrike Quake 3 arena Far cry 3: blood dragon tutorial Unit testing crmsh - programmet Kristoffer jobbar med GnuTLS OpenSSL Om buggen i GnuTLS Nikos Mavrogiannopoulos och Simon Josefsson - männen bakom GnuTLS Shinichi Mochizuki - japansk matematiker som ingen förstår FFMPEG - stor, spridd och fri plattform för att hantera ljud och film Bit shift - att förändra binära tal genom att förskjuta deras siffror RIFF-formatet Satoshi Nakamoto - mannen som, troligen, ligger bakom Bitcoin Pocket - program för att spara text och läsa senare Donald Knuth Second system syndrome Suse - ett lite äldre företag som är ganska stort.
Kodsnack 43 - Jätteprestanda i kod som gör helt fel grej
Vi snackar spel, buggjakter, buggen i GnuTLS och varför inte fler undersökt säkerhetskod. Strul med ljudfiler gav oss sämre material än vanligt att arbeta med, vi ber om ursäkt om det låter lite burkigt här och där. Länkar Instruments - tråd- och låsvy Instruments time profiler-instrument Tobias debuggar trådar Raspberry pi - öppen dator på ett kretskort plockstat Litet exempel på data från plockstat OS X localtime_r - tidshantering där alla delar ett lås Diskussioner om tidsdragning på 10.9 ntp - network time protocol Xcom: enemy unknown och klassikern UFO: enemy unknown The walking dead Telltale games Broken age - ett nytt äventyrsspel i klassisk peka-och-klicka-stil från Tim Schafer. Ytterligare några av Fredriks tankar om Broken age. Titanfall FPS - first-person shooter Counterstrike Quake 3 arena Far cry 3: blood dragon tutorial Unit testing crmsh - programmet Kristoffer jobbar med GnuTLS OpenSSL Om buggen i GnuTLS Nikos Mavrogiannopoulos och Simon Josefsson - männen bakom GnuTLS Shinichi Mochizuki - japansk matematiker som ingen förstår FFMPEG - stor, spridd och fri plattform för att hantera ljud och film Bit shift - att förändra binära tal genom att förskjuta deras siffror RIFF-formatet Satoshi Nakamoto - mannen som, troligen, ligger bakom Bitcoin Pocket - program för att spara text och läsa senare Donald Knuth Second system syndrome Suse - ett lite äldre företag som är ganska stort.
Kodsnack 42 - Sätt in pengar på den här adressen
Noa Resare besöker Kodsnack för andra gången och berättar allt om Bitcoin från betalningssystem via gruvdrift och växlingskontor till säkerhet och ansvarsfördelning. Noa jobbar med öppen källkod påSpotify, är @blippie på Twitter, skriver ibland på noa.resare.com och har nyss publicerat artikelnKryptografiska valutor & Bitcoin. Länkar Econ talk med Gavin Andresen om Bitcoin Gavin Andresen - en av de mest publika utvecklarna av Bitcoin Econ talk med Yanis Varoufakis, ekonom som jobbat på Valve och pratade organisationsstruktur Libertarianism i USA Byteshandel De första valutorna Yap - en ö i stilla havet som har använt stenar som valuta Svenska kopparplåtsdaler på 20 kilo var så otympliga att Sverige utvecklade sedlar.Lars O. Lagerqvist, Vad kostade det? Historiska media 2011, sidan 47. Centralbanker Kopplingen till ädla metaller hos valutor Fiatpengar - som får sitt värde av myndighetskontroll och lagar - användes först i Kina för tusen år sedan. Inflation och hyperinflation Hyperinflationen i weimarrepubliken En uppskattning är att bara 8% av världens pengar är fysiska, resten är digitalar Abstraktionslager i mjukvara Översikt av hur Bitcoin fungerar - från bitcoin.org Publika och privata nycklar Bogocoin Blockkedjan - Bitcoins kedja av transaktioner som också skapar nya bitcoins Blockkedjans storlek och tillväxt Att gå med i bitcoinnätverket Länkad lista - datastruktur av ihopkopplade noder Mining - att räkna för att få fram nya bitcoins Den officiella bitcoinklienten Plånböcker är i Bitcoin behållare för adresser Bitcoin exchanges - växlingskontor mellan bitcoin och andra valutor Organisationer och personer som bedriver gruvdrift SHA-256 De checksummor som ger nya bitcoins MD5 och dess sårbarheter Antal checksummor som räknas ut per sekund i bitcoin-nätverket Hårdvara för att bedriva bitcoin-gruvdrift Double-spending-attacker mot Bitcoin - sätt att försöka använda mer pengar än man har Den teoretiska risken med att någon får majoritetskontroll över nätverket Faktorn beräkningskapacitet jämfört med superdatorer Nuvarande svårighetsgrad för vinnande checksumma Bitcoin Sverige-forumet på Facebook Mt:gox - växlingskontor som nyligen brakat ihop och gått i konkurs http://en.wikipedia.org/wiki/Foreignexchangerisk Bitcoins prisutveckling Företag som säljer bitcointjänster Kinas agerande king Bitcoin Artikel om hur det vore ifall kontanter kom idag Planet money om bitcoin Coinbase Ben Horowitz, investerare som gillar Bitcoin Felix Salmon, finansreporter och bitcoinskeptiker Antal bitcoins över tid Bitcoin futures och futures i allmänhet Finansiella instrument Förutsägelsemarknad (prediction market) Pengatvätt Bernie Madoff Ponzi scheme - pyramidspel Charles Ponzi Rick Falkvinge om Bitcoin och Mt:gox Yubikey - hårdvara för säker autentisering Tvåfaktorsautentisering Vårt avsnitt om Gotofail och GnuTLS-buggen wallet.dat Pony, botnät som försöker stjäla bitcoins Cyperns bankkris Den svenska bankkrisen på nittiotalet Svensk insättningsgaranti Islands kris 2008 Dogecoin För den som inte fått nog av information om Bitcoin The talk show, avsnitt 74 är en lång redogörelse för och diskussion om Bitcoin med John Gruber och Glenn Fleishman Bitcoin: a peer-to-peer electronic cash system Satoshi Nakamotos ursprungliga paper om Bitcoin
Kodsnack 41 - Genuint sur, riktigt trött och lite ärlig
Peter Magnusson från bland annat Säkerhetspodcasten gästar oss och snackar Apples gotofail-äventyr, SSL, verktyg som kan hjälpa en att hitta oanvänd eller osäker kod och mycket mer. Länkar goto fail; - testsida som visar om du har buggen sslKeyExchange.c i libsecurityssl - platsen där buggen finns eller fanns if-satser goto Detaljer kring buggen RSA-kryptering Apples uppgradering av iOS 10.9.2 av OS X Buffer overflow SQL injection NSA Edward Snowden Lintverktyg - analyser av källkod som rekommenderar bra sätt att skriva kod LLVM/Clang - Apples kompilatorinfrastruktur Att få LLVM/Clang att varna för död kod Microsofts _NSAKEY @blaufish_ Peter Magnusson på Wordpress Intrångstestning Säkerhetspodcasten Säkerhetspodcasten på Twitter Kodsnack 38 - om bland annat Maven Venndiagram Unit tests - enhetstester - små tester av små delar kod Happy path Haskell Quickcheck genererar tester Rena funktioner - pure functions Enhetstestgenerator för Visual studio RFC 5246 - om TLS ssllabs.com How's my SSL? BEAST-sårbarheten Nattliga byggen av Webkit Blink - Googles egen gren av webkitprojektet Is it safe to mosh? - presentation om mosh Mosh, the mobile shell - ett alternativ till SSH FTP-protokollet och hur det gör med brandväggar FTP och kryptering Passivt läge i FTP ARPANET Computer security archive project - fullmatat med historia Säkerhetsutvärdering av Multics, från 1974 Lösenord borde avvecklas, redan 1972 Värdnamnsverifiering i SSL - slå inte av! Effekten är densamam som med gotofail-buggen DigiNotar - certifikatsutgivare som fick slå igen 2011 på grund av säkerhetshål Comodo - certifikatsföretag Digicert Sdn - malajsisk certifikatsutgivare Bitcoin Mt:gox - japansk bitcoinväxlare som fick stänga efter att stora summor stulits PGP - Pretty good privacy, mjukvara för kryptering Web of trust DNSSEC - specifikationer för att höja säkerheten i DNS-systemen Convergence för SSL och webbläsarplugin för Firefox för att se certifikat och dess ändringar PKI - public key infrastructure Ludd - Luleå academic computer society Interplanetary internet, och dess möjliga arkitektur UDP - user datagram protocol OWASP - open web application security project OWASP dependency check Retire.js Auditing Farorna med printf med %n Lint för C Splint - säkerhetsorienterat lintverktyg Find security bugs för Java PL/SQL - Oracles SQL-dialekt
Kodsnack 40 - Jag tror att jag oftast harvar för länge
Fredrik och Tobias snackar installationsprogram, hur och när man byter ut något dåligt och funderar över hur man ska kunna leva på mjukvara i framtiden. Går det att bygga saker som är lagom stora och går att leva på? Länkar Att skapa en triangel i CSS NSIS - Nullsoft scriptable install system Cmake och dess stöd för att skapa NSIS-filer Windows installer WIX - Windows installer XML toolset Windowsregistret - det stora inställningslagret i många versioner av Windows .exe CDN - content delivery network Privilegieeskalering - att skaffa sig högre behörigheter i ett system än vad man borde ha DirectX - microsoftbibliotek för ljud, bild, video och mycket mer Visual C++ QT - UI-ramverk WhatsApp och Facebooks köp av företaget Basecamp, tidigare 37 signals - litet välkänt och organiskt växande mjukvaruföretag Uppgraderingspriser i apples programbutiker Titanfall - kommande mastodontförstapersonskjutarspel Electronic arts - mastodontutgivare av spel Infinity ward - utvecklare av bland annat spel i Call of duty-serien Origin - Electronic arts digitala distributionsplattform Spelbutiken.se Electronic arts ursprung Battlefield 4
Kodsnack 39 - Om du fick äta glass varje dag
Vi snackar med Martin Jonasson, mannen bakom bloggen Prototyprally, företaget Grapefrukt, det eminenta spelet Rymdkapsel till en uppsjö plattformar och mycket mer. Allt från klassiska spel som inspirerat via actionscript till att driva företag, göra sin egen grej, skriva kod för flera plattformar och lyckas avsluta projekt tas upp. Länkar Rymdkapsel - Martins mest kända spel Prototyprally - Martins blogg Dungeon keeper - det gamla hederliga strategispelet om att bygga fängelsehålor Nya och ganska utskällda Dungeon keeper - det nya spelet om att betala pengar för att komma vidare Doom - klassisk förstapersonsskjutare från 1993 Descent - klassiskt förstapersonsskjutare i rymdskepp i grottsystem från 1995 Isometriska spel Mortal kombat - fightingspel med digitaliserade karaktärer One must fall: 2097 - robotfightingspel GDC - game developers conference PlayStation Mobile Playstation vita Haxe - programmeringsingsspråk med rötterna i Actionscript. MTASC - actionscriptkompilator skriven i OCaml. Utvecklarportalen för Playstation mobile Sophantering i programmeringsspråk OpenFL, tidigare NME HTML 5 som ersättning för Flash Grapefrukt - Martins företag Juice it or lose it - presentation om att högpolera spel Petri Purho - spelskapare och presentatör i videon ovan Jesus versus dinosaurs Hur Will Wright fick idén till Sim city Nordic game jam Hackathon De sista nittio procenten Realtidsstrategispel Command & conquer Android NDK JNI - Java native interface Wii U Spin the bottle OUYA - tv-spelskonsoll byggd på Android Hembyggd arkadmaskin för fyra personer - mer information. Mrs. dad vs. körv - Martins OUYA-spel Niklas Ström - skapare av bland annat musiken till Rymdkapsel Massive Tarsier studios King The Division Simogo - skapare av bland annat Yearwalk och Device 6. Dream machine Mediocre Metaprogrammering
Kodsnack 38 - En stor hög håriga shellscript
Vi snackar system med Noa Resare; system för att bygga och integrera, system för att starta system, Linux, X, serverhallar och meddelandesystem. Som grädde på moset ID3-taggar osynliga för radarCRC32. Noa Resare finns även på Github och Twitter. Länkar Kodsnack 8 - Byggare Bob - vårt tidigare avsnitt om byggsystem Maven - byggsystem och mer därtill Jenkins - kontinuerlig integrationsserver Tobias patch till Jenkins Initsystem - program som startar andra program PID - process-ID Upstart - Ubuntus init-ersättare Lennart Poettering - skapare av bland annat System D Red hat systemd udev - enhetshanterare för linuxkärnan Debian - anrik linuxdistribution GNU Hurd GNUs ersättare för unixkärnan Fedora - linuxdistribution från Red hat Mir Unity The real story of Wayland and X - video. Wayland cgroups Logind Positioning statement Spotify labs Spotify kernel patching Engine yard - molnplattform för Ruby on rails och PHP Ruby on rails Gyron - driver datorhallar för bland annat Spotify Kodsnack 14 - Ramvärk - om stora ramverk kontra att skriva saker själv EJB - Enterprise java beans Inversion of control Spring OSGI Rabbit MQ ZMTP Netty-ZMTP - Spotifys ZMTP-implementation AMQP Celery - pythonbibliotek för meddelandesystem. Sparkey - key-value-store som batchskriver och läser billigt istället. Cassandra - öppen databas först utvecklad av Facebook Berkley DB CDB Qmail Tokyo cabinet BSDiff Googles diffimplementation (cougarette?) ID3 - metadatacontainer ofta använd för mp3-filer Zipformatet CRC32 Noas CRC32-hack
Kodsnack 37 - Allting är en enda röra
Vi snackar javascriptramverket React, Clojure, Closure och hur man sätter sig in i något nytt. Dessutom tar vi upp värdet i att skriva av exempel, läsa hela texter och se hela videor och vår egen tålamodsbrist när det gäller att lära oss nya saker och förstå tänket bakom dem. Som eftersnack beskriver Kristoffer Elixir och fördelarna med Haskells typsystem. Länkar React MVC - Model-view-controller Oföränderlig data - immutable data DOM - dokumentobjektmodellen för webbsidor Om - "ett closuregränssnitt till React" Knockout - ramverk med mer fokus på "klassisk" databindning requestAnimationFrame Clojurescript Clojure, Lisp och Scheme Clojure programming - bok Programming Clojure - bok Kompilatorn Closure Templates - mallar i webbutvecklingssammanhang JSX i React Scala Deklarativ programmering Edge cases Edge cases - trevligt poddprogram om oftast applerelaterad utveckling MVVM - Model view viewmodel Eftersnack Video om programmering i Elixir Erlang Haskell Haskells typsystem Bondage and discipline language Pattern matching Prolog Erlang the movie Erlangs typsystem
Kodsnack 36 - Årets avrundning uppåt
Vi snackar om vad vi lärt oss under 2013, webbutvecklingstrender. All tid som slösats på JVM och Javascript. C++ vara eller inte vara och alternativ i dagens värld. Vi tittar också på statistiken över populära språk 2013 och försöker förutsäga framtiden. Länkar Programmeringsspråket Go Javascriptramverket Ember Javascriptramverket AngularJS Databindning JQuery Javascript skapades på tio dagar Dart Alla problem inom programmering kan lösas genom ytterligare lager abstraktion Clojure Java virtual machine - motorn på vilken Java och flera andra språk kan köras. RPM - Red Hats paketsystem för Linux. APT - Debians paketsystem för Linux. C++ standardbibliotek Boost-biblioteken för C++ QTCore C# MonoDevelop Windows forms MFC XAML Code 2013 Bash Delphi/Object Pascal AWK Notch - mannen bakom Minecraft Transact-SQL *TIOBE-index över språkpopularitet för januari 2014 Perl 6 Transact-SQL Utvecklingen för Objective-C i TIOBE-index Objective-C och dess historia Gitlab Clojurescript Om React - Javascriptramverk från Facebook imgui - immediate mode-GUI för multiplattform, byggt på OpenGL. Tillbaka till framtiden II - flygande skateboards Sourceforge Och sist men inte minst: Stäng ner internet!
Kodsnack 35 - Intervju med Marcin de Kaminski
Vår sista intervju från Internetdagarna 2013 är med rättssociologen och nätforskaren Marcin de Kaminski och handlade mycket om etik för utvecklare. Länkar Marcins webbplats

Kodsnack 34 - Intervju med Jono Bacon
Internetdagarna är över! Vi lämnade Stockholm Waterfront med ett par intervjuer, reflektioner och en hel del idéer och uppslag för vad vi vill göra med podcasten framöver. Först ut är vår intervju med Jono Bacon. Jono är Community Manager på Canonical, företaget som ligger bakom Linux-distributionen Ubuntu. Han var på Internetdagarna för att hålla en keynote med teman Community, så våra frågor började där. Han är dock även programmerare, musiker och en allmänt trevlig snubbe, så vi hinner avverka allt möjligt från hemmakontor till mobilprogrammering. Jono har även sin egen podcast som vi rekommenderar till alla som är intresserade av öppen källkod eller bara vill höra mer av Jono. Vi låter det här citatet från vår intervju tjäna som ett smakprov eller varning! "Some people are just assholes. Some people are just grade-A, copper-bottom, 24 carat gold assholes out there!" Länkar Jonos hemsida: jonobacon.org Jono på twitter: @jonobacon Severed Fifth Art of Community Bad Voltage Ubuntu Touch SDK Beta iRaccoonShow PhoneGap Ubuntu JuJu Gustavo Niemeyer - Ubuntu Touch och Go Bad Voltage pratar om PS4 och XBone

Kodsnack på Internetdagarna, avsnitt 2 - Stockholm Makerspace
Tobias intervjuar Andreas Lundquist, Stockholm Makerspace Stockholm Makerspace är en ideell förening grundad i början av 2012. Syftet är att vara en verkstad för att främja skapande av alla sätt. Kan vara programmering av Raspberry Pi eller att trycka T-Shirts, allt är välkommet.

Kodsnack på internetdagarna, avsnitt 1 - Demokrati och sånt #ind13
Vi är på internetdagarna! Eller ja, Tobias är på internetdagarna. Han har precis sett keynotes från Jimmy Wales och Rebecca McKinnon, och diskuterar intrycken med Kristoffer som sitter 15 våningar upp i samma byggnad. Fredrik är också i närheten, men av skäl vi helst inte går in närmare på här (men som vi diskuterar i avsnittet) är han inte med. Saker och ting går inte alltid som man tänkt sig!

Kodsnack 30 - Data i realtid på bussen
Vi snackar felsökning, Pascal, mode inom användargränssnitt, för- och nackdelar med att utveckla för en tillverkares eget "multiplattformsramverk" och om varför Android kan vara det sämsta som hänt Linux. Bland annat. Länkar SDL - bibliotek för ljud och bild på flera plattformar Mac OS X Mavericks - senaste versionen av Apples operativsystem för persondatorer LLDB Fönsterhanterare Quartz NSWindow - fönsterklass i Apples ramverk Cocoa Tidigare snack om stora ramverk Accidental tech podcast, avsnitt 37 - A 3000 word digression Oxygene - miljö för många plattformar Programmeringsspråket Pascal och dess historia Eclipse Lookahead System 7 Gnome GTK Vala - objektorienterat lager på C Folklore.org - läsvärt om utvecklingen av den ursprungliga Macintosh Rhapsody - OS-utvecklingsprojektet OpenBSD NeXT Mach-mikrokärnan Yellow box - det som blev Cocoa Classic Mac OS Copland Mac OS X server Aqua Objective-C iMac - startade trenden med godisfärgad plast iBook iOS 7 This one goes to eleven Scott Forstall Jonathan Ive Windows 8 Metro - Microsofts designspråk för plattor och telefoner UIKit dynamics SpriteKit Ohm chess HD - Tobias och Kristoffers schackspel för iPad Cocos 2d Flash Actionscript iD software SceneKit SceneKit-presentation från WWDC 2013 (inloggning och registrering krävs) DirectX OpenGL OpenGL ES Immediate mode i OpenGL Chromebook QT Meego Hypercritical Apple med (många) flera stämmer Google Vi snackar patent: Kodsnack 26 - Modermodemet ser dig Macbook pro retina Mac pro Röd Mac pro på auktion Aktivera hög-DPI på icke-retinaskärmar Internetdagarna 2013 - kom och prata med oss!

Kodsnack 29.5 - Master of the mix matrix
Tobias \u2026 ventilerar \u2026 sina erfarenheter av att tolka kortfattad dokumentation och fels\u00F6ka problem med ljudhanteringskod.\n\nL\u00E4nkar\n\n\nApples sv\u00E5rtolkade dokument\nCore audio\n","wysiwyg":{"html":"","source":"Tobias \u2026 ventilerar \u2026 sina erfarenheter av att tolka kortfattad dokumentation och fels\u00F6ka problem med ljudhanteringskod.\n\n## L\u00E4nkar ##\n* [Apples sv\u00E5rtolkade dokument]()\n* [Core audio]()"}}" data-block-type="44" id="block-f0fe818e760140898e03" style="position: relative; clear: none; z-index: 1; padding: 0px 17px;"> Tobias … ventilerar … sina erfarenheter av att tolka kortfattad dokumentation och felsöka problem med ljudhanteringskod. Länkar Tobias \u2026 ventilerar \u2026 sina erfarenheter av att tolka kortfattad dokumentation och fels\u00F6ka problem med ljudhanteringskod.\n\nL\u00E4nkar\n\n\nApples sv\u00E5rtolkade dokument\nCore audio\n","wysiwyg":{"html":"","source":"Tobias \u2026 ventilerar \u2026 sina erfarenheter av att tolka kortfattad dokumentation och fels\u00F6ka problem med ljudhanteringskod.\n\n## L\u00E4nkar ##\n* [Apples sv\u00E5rtolkade dokument]()\n* [Core audio]()"}}" data-block-type="44" style="position: relative; clear: none; z-index: 1; padding: 0px 17px;"> Apples svårtolkade dokument Core audio

Kodsnack 29 - Att lära sig gå
Kristoffer berättar för Tobias om sitt första riktiga projekt skrivet i Go och därifrån går diskussionen vidare till att utveckla i Go, hur det fungerar, vilka verktyg som finns och hur framtiden kan tänkas se ut. Ska du förresten på Internetdagarna? Glöm inte att Kodsnack kommer att vara på plats. Hör gärna av er om ni ska dit, kom förbi och säg hej. Eller bara framför åsikter om vad vi borde göra på plats. Länkar Go Kristoffer om Podcast studio Noise gate SDL Kodsnack 24 - En bättre for-loop, om Go Go-SDL Binärkompatibilitet Cgo - skapar gopaket som anropar C-kod Kristoffers uppdaterade GoSDL för SDL 2 Mutex Goroutines Sox - ljudbearbetningsprogram för kommandoraden Core audio Kristoffers wrapper för Sox i Go Emacs - som Kristoffer skriver Go i Voidpekare Unity - spelmotor med påbörjade bindningar till Go Sublime text - som Tobias skriver Go i Pypi - Python package index Ruby gems Internetdagarna - med Kodsnack på plats!