⌘X 14.1: WWDC and Swift

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 90

  • @host.
    @host. 10 лет назад +91

    Hmm... Wondering how Brady is gonna fit that waterfall on his shelf...

  • @ThisIsARubbishName
    @ThisIsARubbishName 10 лет назад +21

    "oh i just dropped my little book of passwords!"
    cue Grey: "Ohhhhh no! hahhahah" ^guffaw^

    • @victorycoffee92
      @victorycoffee92 4 года назад +2

      I don't understand this reaction. Any explinations?

  • @anakso
    @anakso 10 лет назад +6

    This is awesome please do more of this! :D I'd love to hear the bits grey cut out!

  • @Dracanic
    @Dracanic 10 лет назад +13

    I am a long time subscriber to CGP Grey and Brady's swarm of channels. I just learned about this channel. You guys need to advertise this more. I love to listen to you guys talk and many of your fans feel the same. This channel is worth advertising better to your fans.

    • @jfking01
      @jfking01 10 лет назад

      Grey advertised this on his channel a while ago, but if you want to you can get the actual podcasts which, as evidenced by this video, are 10 episodes ahead.

    • @TheOtherNeutrino
      @TheOtherNeutrino 10 лет назад

      I found this out from their latest podcast episode, 15.

  • @robertbackhaus8911
    @robertbackhaus8911 10 лет назад +2

    Wow! that is your best desk ornament yet!

  • @sportmodeguy9684
    @sportmodeguy9684 10 лет назад +7

    CGP's voice is so glorious.

  • @ghostt23
    @ghostt23 10 лет назад +1

    Mr Grey, I like these bloopers, please put up more! Cheers!

  • @melkior13
    @melkior13 10 лет назад +9

    The 'can't make mistakes in Swift that you can in Objective C' - usually means you will just make new errors. That rationale is why C# was made. That hasn't displaced C & C++ development on PC.

    • @somniac9160
      @somniac9160 10 лет назад +1

      While I'm certain C# has been used when previously C/C++ would have been, at this point in time to believe anything will fully displace C or C++ is preposterous.

    • @melkior13
      @melkior13 10 лет назад

      somniac 100% agree

  • @jkristoff88
    @jkristoff88 10 лет назад +3

    I just love all this stuff. anything cut from the other podcasts that we can hear?

  • @KunamaElgar
    @KunamaElgar 10 лет назад

    Although I'm not an Apple geek at all (my students laughed at me last week when I tried to operate a Macbook and smartboard in class for the first time!) I really like the idea of being able to find deleted podcast clips here on youtube. Please add more in the future!

  • @apmasell
    @apmasell 10 лет назад +1

    Swift is interesting in a larger context with Rust and Vala.
    Swift was developed by Apple to provide a more modern language that is still compatible with Objective C programs and it is easy to make hybrid Objective-C/Swift programs.
    Rust was developed by Mozilla to provide a more modern language that is still compatible with C++ programs and it is easy to make hybrid C++/Rust programs.
    Vala was developed by GNOME to provide a more modern language that is still compatible with C programs and it is easy to make hybrid C/Vala programs.
    Each of the three languages actually has a lot in common (e.g., all provide lambdas, and memory management, and do away with header files even though C, C++, and Objective-C have header files). They differ mostly in how the underlying platforms differ. For example, Vala has a lot of support for GNOME's signal mechanism. All have features that make them easy to glue to the matching GUI toolkits GTK (Vala), Cocoa (Swift) and XUL (Mozilla).

  • @freegameLP
    @freegameLP 10 лет назад

    I already was confused because Brady said something about "App Development" in the podcast, but now this does make sense

  • @TThomas939
    @TThomas939 10 лет назад

    Nice video, probably going to teach my self some swift.

  • @heavenlyevan
    @heavenlyevan 10 лет назад +3

    Damn, my first real programming language was Turbo PASCAL.

  • @TheMook200
    @TheMook200 10 лет назад

    brady in the beginning talks about some of the podcasts cpg listens to. could you post some links to these?

  • @harolddost
    @harolddost 10 лет назад

    I don't really see how they could make Swift "Compulsory" for performance reasons I could always see a need for C in certain applications. That and the fact that you can use swift right along side Objective-C.

  • @melkior13
    @melkior13 10 лет назад

    Its unlikely they will remove Objective C/Objective C++ - all the fundamental OS elements are still built on top of it. Pretty much any 3rd gen language can be used to written an operating system. So I don't think it will be required.

  • @KadexGaming
    @KadexGaming 10 лет назад +1

    holy Macintosh batman!!!

  • @Crowz
    @Crowz 10 лет назад

    Just use Qt or Xamarin, the more you get stuck in writing for apple only, the more you isolate a majority of computer and cellphone users. Plus C++ and C# are far more common in the open source community.

  • @googolplexbyte
    @googolplexbyte 10 лет назад +1

    The WWDC implies something along the lines of GDC to me.

  • @mothman.industries
    @mothman.industries 10 лет назад

    Wait, Brady has a book of passwords?
    BRB, breaking into his house and stealing it so he has to change them all. >:D

  • @Pyotyrpyotyrpyotyr
    @Pyotyrpyotyrpyotyr 10 лет назад

    That laugh.

  • @CyberPsyLen
    @CyberPsyLen 10 лет назад

    Can I hear the podcast without downloading iTunes?

    • @KunamaElgar
      @KunamaElgar 10 лет назад

      Yep, go to Hello Internet's website and you'll find them there. They're also slowly adding old episodes to their youtube channel here.

    • @CyberPsyLen
      @CyberPsyLen 10 лет назад +1

      thanks Kunama

    • @feldinho
      @feldinho 10 лет назад +1

      Well… there is this site called RUclips… maybe you've heard of that :P

    • @CyberPsyLen
      @CyberPsyLen 10 лет назад +2

      *clap clap* - yep thanks so much

  • @Spartins321
    @Spartins321 10 лет назад +40

    I prefer PC and android so I couldn't care less about WWDC.

    • @stephenmiller8196
      @stephenmiller8196 10 лет назад +7

      GNU/Linux is the way to go, not Windows

    • @kincaid9134
      @kincaid9134 9 лет назад +2

      Stephen Miller
      Who's got time for relearning a whole other OS?
      F that.

    • @ShonkyLegs
      @ShonkyLegs 9 лет назад

      Kincaid Beach Anyone who has to use more than one OS? In my time I've developed for PCs, Unix systems, Macs, and a couple of mobile platforms. That's like saying who has time to learn another programming language. Really everyone who has use has time.

    • @kincaid9134
      @kincaid9134 9 лет назад

      ShonkyLegs
      The joke
      Your head.
      It's okay though. I don't blame you, i blame your parents.

    • @ShonkyLegs
      @ShonkyLegs 9 лет назад

      Kincaid Beach Sorry, it's a sentiment I've heard before, I had no context to know you weren't serious.
      Blame who you wish, sorry again.

  • @joshuaiverson85
    @joshuaiverson85 10 лет назад

    if you listen to this on 2x speed they almost sound angry at eachother....

  • @notandinotandi123
    @notandinotandi123 10 лет назад +1

    6:53 DROP ALL DATABASES;

  • @Hybrass
    @Hybrass 10 лет назад

    Isn't Swift just like C# and VB for Microsoft.

    • @yaboyjmatth
      @yaboyjmatth 10 лет назад

      swift is more like F# for microsoft. because swift is more of a functional language with object oriented capability.

    • @Hybrass
      @Hybrass 10 лет назад

      I was more referring to it not being an open language (only usable on apple products).

    • @yaboyjmatth
      @yaboyjmatth 10 лет назад

      yes, it's only for apple products

  • @Niosus
    @Niosus 10 лет назад +17

    Okay you guys made a couple of mistakes in this video. I'm studying computer science so while I'm not the biggest expert I do think that I can explain where you guys made mistakes.
    First of all I'd like to explain what they meant in the Pascal book of "you can make an operating system". This is a result of the language being Turing-complete. I don't know how much you about Turing machines, but a language is Turing-complete if you can do everything in that language that a Turing machine can do. The Turing machine is the mathematical foundation of every computer we know today. While in a mathematical sense it can't _quite_ solve every problem, for all practical intends and purposes a Turing machine can do _anything_ you want. So any language that is Turing-complete can be used to program pretty much anything you would desire. It's not surprising that pretty much every programming and scripting language out there is Turing complete.
    So in that sense, yes you can build an OS out of Swift. But that is not going to happen. This comes down to the level of abstraction. Different programming languages have different levels of abstraction. Pure binary offers no abstraction, BASIC offers some more, C even more, etc etc. There is a general rule of thumb that say that the more abstraction there is in a language, the easier it is to write for but the lower your performance will be. More abstraction leads to less complexity in the code which you "pay for" with reduced performance. This leads to a trade-off when writing code: How much performance do we need? What's the maximum complexity of the code we can handle?
    For something like an operating system, speed is ESSENTIAL. The OS gets used MUCH more often than you realize. In some sections of the OS, a fraction of microsecond can make the difference between an OS that feels fast or sluggish. This is why the core of an OS will always be written in a language with very little abstractions. Things like the user interface are less critical and can be handled by languages with more abstractions since this cuts back on development time.
    So how does Swift fit in there? From what I've seen, it's pretty much on the same level as Objective-C (the old one they used). Around the level of Java, if that can put things into context. What they did was drop a lot of the clutter and made the language more streamlined to program with, as well as made it run a bit faster. So in a sense they have improved both on the complexity and performance level. Good for regular old applications, but you don't want to use it in anything that needs absolute performance. This is also why I am quite certain that they will never make this compulsory. It would only limit developers and therefor limit their platform. They also don't have a reason to do so. The language you work in has little to do with the binary code it gets compiled into. See it as video editors and the output video. Different editors can produce the same video. A video player doesn't really care which editor was used as long as they outputted to a supported video format (called the "runtime").
    What I think will make the most impact is their new "Metal" API. This is going in the opposite direction as Swift: With that you can program "closer to the metal". This means more work to get the code working, but with a huge potential performance boost as a result. This is what "real" programmers are very interested in. It gives them access to potentially an order of magnitude increase in performance. This is what is going to make a real difference and allow new kinds of apps that were nearly impossible to do before. So with Swift they make it easier to jump in and with Metal they allow veteran developers to get every last bit of performance out of the devices.
    Sorry for the long post, but I hope this clears things up. I'll probably copy/paste this to the Reddit thread whenever the new episode goes up.

    • @nick101gb
      @nick101gb 10 лет назад +1

      Good answer however probably wouldn't class Objective C as the same as swift mainly cause it's not really the same layer as hell you can build an OS easy in C, (hell done it many times myself), Objective C is an Odd one though as it kind of tranverses many layers.
      Put it simply if you want to learn to program C/C++ is where you start C for low layer end C++ for high level layer (C++ + QT is the way to go for most things really). Infact don't learn C/C++ there is enough of us already and I don't want anymore competition thank you :P.

    • @Niosus
      @Niosus 10 лет назад +2

      ION Knight C/C++ is a horrible place to start in my opinion. You need to take care of everything from the get-go. I would say that starting very high up is a better idea and that you should work your way down. Python or Ruby are much better to get the basics down.

    • @nick101gb
      @nick101gb 10 лет назад

      Yea it's hard but i wouldn't say horrible, C/C++ are the foundation of everything. Once you understand and know C/C++ other languages become alot easier. Mainly cause alot of languages take their queue from C. Along with the fact that you can build anything in those two languages. Add QT in the mix and you have a very powerful set of tools that are way more useful to a new programmer than python and ruby.
      Either way it's very much opinion based.

    • @Niosus
      @Niosus 10 лет назад +1

      ***** Could you describe which core concepts you mean? Things like data structures (heaps, trees, etc) and structure of algorithms are pretty much the same for every language. The object oriented approach and everything that goes along with it is also one of those cornerstones which are used everywhere in pretty much the same way.
      What would be the "big difference" between for instance C++ and Java when it comes to really understanding what is going on?
      Could you elaborate on what you exactly you mean? I started out with HTML (not a real language, I know...) as a kid, moved to PHP -> Java -> C/C++ with a bunch of other languages along the way. I've never really had any issues moving "down". Although I have to admit, I haven't done a whole lot in C/C++ so I wouldn't know all the quirks.
      My point would be that making it incrementally harder lets you focus on one "issue" at the time. When you're learning to manipulate your pointers on a bit level in C++, you really want have to basics down (like OOP, loops, datastructures, etc). Sure you can do it all at once, but why make it harder than it needs to be?
      Looking forward to reading your perspective on this. There probably is something I have missed.

    • @Niosus
      @Niosus 10 лет назад

      ***** 
      Okay. Those are fair points. Let me clarify that I am not saying that learning C++ or C is a bad idea. It is not, it is a great boon to be able to use those languages. I was more talking about what for instance CGPGrey should start with. I think we both agree that for casual experimentation C or C++ is not the way to go.
      As for students, I think you can make the case both ways. The algorithms and data structures course I followed had us write Java code. Certainly from a performance perspective that's a bit silly, but the idea is to think with the algorithms. The algorithm is the same in every language. The core idea behind a data structure is the same in every language. It's just the housekeeping that is different. I think that Java is a solid language to get started with. It is not nearly as "fragile" as C++ but it still forces you to write proper code.
      The operating system aspect I got from the Operating Systems course. Everything you mentioned got explained independently of a programming language, as it should be I believe. These are concepts that can apply to anything.
      Memory management is the big thing that separates C++ from most other languages. I have to hand you that and admit I haven't done a lot of that.
      The main line I see here is that it seems like there were a lot of things left out in your education. I don't mean this as an insult to you in any way since you obviously would have loved to get that baggage back then. I don't think it's necessarily a problem with the languages, but the fact that only with C you are really forced to think about how it all works. A couple of the right books would probably have helped you out a lot. It's a bit like Latin if you have any knowledge of that? In Latin the function of a word in a sentence will influence how it is written. This takes away a lot of ambiguity but also makes it harder to read and write. You can use both Latin and English to say the right thing, but Latin will force you to think about what function each word has in the sentence.
      I'm probably still very naive and ignorant (still got a couple years of university left to go, so definitely ignorant) so I don't doubt that you'd have been better of learning C and C++ early on. I just still think that this is no necessarily a prerequisite. There are whole fields in which you barely even touch the OS. When dealing with the web you'd be a lot better off putting your time in reading the HTTP specs than the C specs. For mobile development you mostly live in a sandbox and interactions with the system can be reduced to the provided APIs. We're still gonna need low level code, but the amount of people working on that code has been decreasing for a while now. I am sure it is essential for your job but without that background you'd still be able to find a good job and be absolutely fine.
      Frankly I wish I had a project I could use as an excuse to get into the deep end of C++. I've done some C in the past to program a robot but it didn't do anything really spectacular from a code perspective. I want to get my hands dirty and be able to claim that I can work with it. Right now I have a couple freelance web development projects and I have to turn down requests because I simply don't have enough time... And I haven't been actually searching for work, people just find me via-via and the more projects I accept the more people approach me. I'm doing absolutely nothing special from a technical point of view and I certainly don't want to do this for the rest of my life, but I could. There is a ridiculously high demand for simple stuff so there is not really an absolute _need_ to learn everything that goes on behind the scenes. I want to learn it, I'm just a student making a bit of cash right now, I want to move on to the more complicated stuff. It is just not a necessity, but it is recommended.

  • @PlotCitizen
    @PlotCitizen 10 лет назад

    Which episode was this scene deleted from? CGP Grey

    • @host.
      @host. 10 лет назад

      it's called 14.1, do the math :)

    • @AlexPope1668
      @AlexPope1668 10 лет назад

      Not deleted. A "preview" - or a piece of the upcoming show, Episode 14.

    • @host.
      @host. 10 лет назад +6

      Alex Pope No, it's exactly that, deleted. Grey told it himself in these comments, so if you don't want to miss it watch it here.

    • @AlexPope1668
      @AlexPope1668 10 лет назад

      Oh, my bad there. Cheers.

    • @Kwpolska
      @Kwpolska 10 лет назад +1

      Alex Pope Also, note the ⌘X there - the keyboard shortcut for the Cut operation.

  • @emiliatan2509
    @emiliatan2509 10 лет назад

    Try listening at 0.5 speed. You guys sound so drunk. xD

  • @alexandreduarte4448
    @alexandreduarte4448 10 лет назад

    Awww iPhones aren't quite as popular outside the US, I won't get to listen to it...

  • @jacobcodes
    @jacobcodes 9 лет назад

    Interesting.

  • @vatnidd
    @vatnidd 10 лет назад

    Isn't it pronounced OS X? I'm not sure.

    • @ragnkja
      @ragnkja 10 лет назад

      The "X" is the Roman numeral ten, and the pronunciation follows that.

    • @rlamacraft
      @rlamacraft 10 лет назад +3

      Technically, it's pronounced "O S 10" as the X is the Roman numeral for 10 but most people who don't work at Apple, especially those that aren't American, typically say "O S X" - though there is really no difference; there is no GIF/JIF style argument to be made

    • @vatnidd
      @vatnidd 10 лет назад

      Oh crap I meant OS 10. Sorry. But Grey pronounced it like OS "X", though.

    • @George_Azeria
      @George_Azeria 9 лет назад

      But Apple can't numbers anyway. 10.10?

  • @LordLoss0000
    @LordLoss0000 10 лет назад

    E3? people watch this over E3?

    • @yaboyjmatth
      @yaboyjmatth 10 лет назад

      E3 is a big event for games for people with leisure time to play games. WWDC is a big event where Apple unveils new frameworks and abilities for developers to let them do more with the applications and work. And if you have an Apple device (Mac, iPhone, iPod) those developers can make better things for those devices, even games. and with the new Metal framework that they released you will probably see some better high performance and high graphic games. One of their examples was that they could play the plants vs zombies xbox console title could be played on the iPhone. and other high performance game engines are being able to come to the iPhone now like cryengine and unreal engine and stuff like that.

    • @LordLoss0000
      @LordLoss0000 10 лет назад

      Never go full aspie.

  • @woodenjaw
    @woodenjaw 10 лет назад

    apple ehuuu...

  • @Soforcom
    @Soforcom 10 лет назад

    ⌘ I feel like a bad person. :)

  • @joshwallacex
    @joshwallacex 10 лет назад +1

    Real Programmers Don't Use Pascal

    • @KhalilEstell
      @KhalilEstell 10 лет назад +8

      Real programmers can use everything. Also, if you work at IBM, you will work with all kinds of archaic languages.

    • @Kwpolska
      @Kwpolska 10 лет назад

      So, you want to say the original Mac OS not was written by real programmers?

    • @joshwallacex
      @joshwallacex 10 лет назад +1

      I was making a joke...

  • @tanyushing2494
    @tanyushing2494 10 лет назад

    first!

    • @host.
      @host. 10 лет назад +1

      you just had to do it, didn't you....

  • @alexf4500
    @alexf4500 10 лет назад

    Boring but cool

    • @IKB79
      @IKB79 10 лет назад

      why boring?

    • @dekost1
      @dekost1 10 лет назад

      Makes sense