Hypercritical

30: Paths in the Grass

 

  [Music] [TS]

  this is hypercritical [TS]

  a weekly talkshow ruminating on exactly [TS]

  what is wrong in the world of Apple and [TS]

  related technologies and businesses [TS]

  nothing is so perfect that it can't be [TS]

  complained about hypercritical is hosted [TS]

  by John siracusa and I'm Ryan Ireland [TS]

  sitting in for Dan Benjamin this episode [TS]

  of hypercritical is brought to you by [TS]

  Shopify comm and Rackspace and we'll [TS]

  hear more about them later in the show [TS]

  bandwidth for hypercritical is brought [TS]

  to you by Midas green tech Virtual [TS]

  Private servers submerged in oil get [TS]

  free bandwidth today at Midas green tech [TS]

  comm / 5x5 all right John um let's go [TS]

  ahead and get started with any um you [TS]

  know I'm not Dan I'm Ryan and uh but we [TS]

  but you still have a big list of stuff [TS]

  you want to talk about I guess we should [TS]

  start out with with some follow-ups from [TS]

  last episode that's right I don't know [TS]

  if did you listen to last episode of [TS]

  that John I listened I listen to every [TS]

  episode even though even if I wasn't [TS]

  doing research as an understudy for Dan [TS]

  actually do a show that's nice that's [TS]

  nice to know [TS]

  so last week we talked a little bit [TS]

  about BBEdit versus textmate versus VI [TS]

  versus Emacs vs. the world and I said a [TS]

  couple things about BBEdit [TS]

  mostly good but one or two things I said [TS]

  was limited one of them was [TS]

  multi-language support so BBEdit has the [TS]

  concept of a language for a document so [TS]

  it's a global setting in the bottom of [TS]

  the document says what what language is [TS]

  this document it's a very big list you [TS]

  can pick from I don't know the full list [TS]

  actually I'll pull it up now and take a [TS]

  look so it's got it's got anything [TS]

  everything from 68k assembler that's the [TS]

  first one that phonetically speaking all [TS]

  the way down to Y amel and about 50 [TS]

  things in between so it's got a lot of [TS]

  language support but I was talking about [TS]

  text mates ability to have an awareness [TS]

  of what context it's in within a [TS]

  document so if you're editing an HTML [TS]

  file for example it would know that [TS]

  you're in a Java Script block and load [TS]

  the bundles that are relevant to the [TS]

  JavaScript stuff and you could do a [TS]

  little fancy completion business based [TS]

  on that context [TS]

  um and I was saying I would like more of [TS]

  that from BBEdit because it has support [TS]

  for a huge number of languages but you [TS]

  can't arbitrarily mix them together as [TS]

  textmate seems to be able to do and I [TS]

  also mentioned that in the context of [TS]

  ybb ed it might be so fast because it's [TS]

  not constantly trying to figure out what [TS]

  context everything is in and syntax [TS]

  highlighted at one of 18 different [TS]

  supported languages at all times so I [TS]

  don't know if that has anything to do [TS]

  with why text mech textmate reportedly [TS]

  beachballs when you paste in a huge [TS]

  amount of text but I was just thrown [TS]

  that out there so after I said that very [TS]

  shortly after I said that I was told by [TS]

  the people that know that actually I'm [TS]

  not giving BBEdit enough credit for its [TS]

  multi-language support and this is true [TS]

  so I have a link to a video in the show [TS]

  notes showing BB edits multi-language [TS]

  support in the example in the book I [TS]

  should have thought of since I've done [TS]

  it myself is when you make an HTML [TS]

  document and you pick like the language [TS]

  and the document is HTML so that's a [TS]

  global switch and BB edit for any [TS]

  individual document say this is HTML but [TS]

  within an HTML document BBEdit knows [TS]

  like oh there might be JavaScript in our [TS]

  the might be CSS in an HTML document so [TS]

  the guys that bare-bones actually put [TS]

  together a quick little videos like a [TS]

  30-second video showing hey look at me [TS]

  I'm editing an HTML document and when [TS]

  I'm in this little style block you know [TS]

  between the style tags I get completions [TS]

  based on CSS and when I'm inside the [TS]

  HTML think pollutions based on [TS]

  JavaScript so it just goes to show that [TS]

  VBA continues to have more features than [TS]

  I remember that it has I mean I I you [TS]

  know the thing I was trying to get is [TS]

  that you still can't arbitrarily mix [TS]

  them so you can't have a document that [TS]

  mixes you know tickle with sequel with [TS]

  objective-c [TS]

  with Fortran I mean even though beabea [TS]

  that supports all those languages but [TS]

  for the ones that really count like HTML [TS]

  BB it has hard coded support for these [TS]

  different languages in these different [TS]

  contexts you know I I just I just [TS]

  switched over to BB edit after using [TS]

  textmate for I don't know probably like [TS]

  everyone else what five years or [TS]

  something like that and I can just to [TS]

  come to your defense a little bit as far [TS]

  as [TS]

  you know forgetting maybe some of the [TS]

  features that BBEdit [TS]

  is that I'm just so new to it now that [TS]

  that I'm still discovering and I use [TS]

  BBEdit [TS]

  back in like I think the last time I had [TS]

  used it was like 2003 or 2004 and coming [TS]

  back to it it's just taken me a long [TS]

  time to unpack all these features again [TS]

  I mean BBEdit is it's it's so powerful [TS]

  that that that I didn't I don't use a [TS]

  good chunk of of what it does and so I [TS]

  can see how some of those things might [TS]

  be overlooked and also things for me you [TS]

  know where the whole concept of bundles [TS]

  in in textmate I'm still trying to [TS]

  figure out how how I can make that work [TS]

  in BBEdit the way I was using it before [TS]

  so baby it actually has is the problem [TS]

  for a long time bb-8 here since I'm [TS]

  using BBEdit since the beginning the [TS]

  features that I tend to miss are the [TS]

  ones that they've added and if I don't [TS]

  go and seek them out and like oh I don't [TS]

  need that I'm happy with the way I work [TS]

  and bb-8 I won't know that they're there [TS]

  so completions were added and like I [TS]

  don't know lead version 89 they've been [TS]

  around for a while you guys had all [TS]

  sorts of completion things and they've [TS]

  been improving but since I don't use [TS]

  them because they didn't exist in like [TS]

  1995 when I built up all my habits you [TS]

  know I used the HTML tools but I used [TS]

  mostly like keyboard shortcuts for [TS]

  making a new tag and entering the [TS]

  attributes but not so much the [TS]

  completion stuff but that exists and the [TS]

  demo video that I linked to shows in [TS]

  addition to multi language awareness [TS]

  shows the completions in action stuff [TS]

  and I bet there that stuff is not always [TS]

  discoverable you know like if you don't [TS]

  know the key sequences to trigger those [TS]

  completions maybe you won't even know [TS]

  that they're there and so I'm kind of [TS]

  stuck in my rut of this is how I used [TS]

  BBEdit in the the late nineties and if [TS]

  there's some fancy new feature I don't [TS]

  need that and then I just forget [TS]

  completely forget that it exists but it [TS]

  you know there's a lot of stuff in there [TS]

  right and I think a lot of it seems like [TS]

  there's been a lot of people that are [TS]

  kind of switching I know since BBEdit n [TS]

  came out and it was on the Mac App Store [TS]

  I was like I'm going to grab it you know [TS]

  it's it seems like a good time to try [TS]

  now is that I'm trying to use BBEdit [TS]

  like I use textmate and that's probably [TS]

  not the right approach [TS]

  well you can't approximate it like [TS]

  actually in BPI 10 they added a new [TS]

  feature I wish I could remember the name [TS]

  of this was I should have had it on my [TS]

  notes I think they call them packages or [TS]

  something it's very similar to bundles [TS]

  but they didn't use the word bundles [TS]

  where it's a bunch of [TS]

  ancient stuff that you can put in side [TS]

  like self-contained and folder you could [TS]

  like pass around to somebody's eye here [TS]

  here's this cool BB edit package I made [TS]

  that has like a bunch of text filters a [TS]

  bunch of snippets a bunch of new menu [TS]

  commands like you put a bunch of things [TS]

  that extend BB edit together in a single [TS]

  thing that you can share I think this is [TS]

  the first step on you know trying to go [TS]

  down that bundle type path where if you [TS]

  if you make them reusable and you make [TS]

  it so that individuals can package them [TS]

  up then you start to have that social [TS]

  effect that textmate have where people [TS]

  sharing bundles with each other and [TS]

  developing bundles and making [TS]

  repositories of bundles and stuff like [TS]

  that yeah and if they've done that with [TS]

  the themes as well so it's yeah it's a [TS]

  little bit easier now with you can see I [TS]

  guess they call a scheme and so that [TS]

  wasn't always the case right because I [TS]

  think didn't John Gruber didn't you have [TS]

  his BB colors or something like that [TS]

  that he built that allowed you to easily [TS]

  import different schemes and to be [TS]

  beheaded [TS]

  yeah like I'll D these features have [TS]

  mostly always been there and BBEdit the [TS]

  final level step is making the [TS]

  infrastructure so that they're easier to [TS]

  share so you don't give someone 20 page [TS]

  instructions alright I'm going to give [TS]

  you this file put in this directory if I [TS]

  just pop it in that director or write a [TS]

  little try to write an Apple script [TS]

  install you know you just want it to be [TS]

  self-contained like a folder full of [TS]

  stuff that you just chuck in one [TS]

  well-known location and I think they're [TS]

  sort of laying the groundwork for you [TS]

  can imagine several versions from now [TS]

  once the infrastructure is there for all [TS]

  these extension mechanisms to be [TS]

  self-contained then you can actually [TS]

  have the application automating it like [TS]

  you drag one of these dot BB package I [TS]

  don't remember the extension but dragged [TS]

  one of these folders or zip files or [TS]

  something onto the app and it would know [TS]

  what it was and say hey it looks like [TS]

  you're trying to install this thing you [TS]

  want me to install it for you and you [TS]

  never even have to know where the [TS]

  application is putting it so I think [TS]

  that it's smart for them to be laying [TS]

  that groundwork now and it's getting [TS]

  better with every version great what's [TS]

  uh any more follow up from last episode [TS]

  yeah so I also talked about launchers [TS]

  Quicksilver or launch bar all that [TS]

  business and I was talking about how I [TS]

  never got into launch bar despite trying [TS]

  it several times because it appeared in [TS]

  the upper right hand corner and Dan said [TS]

  well you you don't have to have it [TS]

  appear in the upper right hand corner [TS]

  you can put it in the middle so yeah but [TS]

  I said yeah but the middle top right [TS]

  like centered under the middle the menu [TS]

  bar like you could slide it along the [TS]

  menu bar and then we just moved on from [TS]

  and then I quickly after the show that [TS]

  email saying actually you can have [TS]

  launched more dead center on the screen [TS]

  not just centered under the menu bar and [TS]

  I said huh maybe you know I haven't used [TS]

  launch bar in a while maybe this is a [TS]

  new feature of a new version I haven't [TS]

  downloaded so I went to the website and [TS]

  I downloaded the latest version of [TS]

  launch bar and I threw it into my [TS]

  Applications folder and it said would [TS]

  you like to replace the existing version [TS]

  I said yeah you must I've already had an [TS]

  old version so I let it replace the [TS]

  application and then I launch launch bar [TS]

  using Quicksilver whatever launch launch [TS]

  bar and what did I see when launch bar [TS]

  launched the launch bar window dead [TS]

  center on my screen so this means that I [TS]

  had to previously downloaded whatever [TS]

  version of launch bar enabled this [TS]

  feature maybe was three or four who [TS]

  knows how long ago it was put launch bar [TS]

  in the middle of my screen and then [TS]

  completely forgotten that it had the [TS]

  ability to do this oh this is what [TS]

  happens when you get old I guess so yes [TS]

  launch bar can be exactly in the middle [TS]

  of your screen and apparently I knew [TS]

  this because my preferences had launch [TS]

  bar exactly in the middle of my screen [TS]

  but I still never went everywhere from [TS]

  Quicksilver for the other reasons I [TS]

  talked about I like the big icons are [TS]

  like the way it looks I don't want to [TS]

  read text so and so forth lots of Alfred [TS]

  fans out there and as I said in the [TS]

  previous show Alfred is as close as I've [TS]

  come to leaving Quicksilver and sort of [TS]

  the dark times of Quicksilver when it [TS]

  didn't look like anyone was actively [TS]

  maintaining it and it was getting flaky [TS]

  I said I gotta find an alternative and [TS]

  Alfred was the best alternative that I [TS]

  found because I could make it the [TS]

  closest to Quicksilver it had pretty big [TS]

  icons you could put it where you wanted [TS]

  it was you could trim it down to be very [TS]

  simple I really just wanted it to be a [TS]

  launcher really really close I would use [TS]

  Alfred probably if I didn't have a [TS]

  Quicksilver because the things that [TS]

  launch bar does and all those other [TS]

  thing and all the other things the [TS]

  Quicksilver does I'm just not interested [TS]

  in I just want it to be a launcher I [TS]

  believe Alfred also has a million other [TS]

  features but as long as I can ignore [TS]

  them and pare them down and just make it [TS]

  a launcher it's pretty nice one yeah I [TS]

  switch to launch bar for the same reason [TS]

  I switched I'm trying to switch to BB [TS]

  edit which is I was trying to this is [TS]

  back when just like you said when the [TS]

  developer I think went to work for [TS]

  Google for a Quicksilver I think that's [TS]

  what what happened when he kind of just [TS]

  stopped working on the project and I [TS]

  wanted to work on I want to use [TS]

  something that was being maintained and [TS]

  this is before it was picked up by the [TS]

  community but yeah but III do you know [TS]

  the same thing I don't um I don't do a [TS]

  whole lot [TS]

  with launch bar in terms of scripting I [TS]

  have a few that I do but I do a lot [TS]

  where I'm opening files with it [TS]

  especially if it's a file that I have [TS]

  selected in the finder and it's probably [TS]

  the same stuff you can do with [TS]

  Quicksilver too but but I'm definitely a [TS]

  minimalist user of launch bar so I [TS]

  didn't actually know you could have it [TS]

  in another screen I've always had it [TS]

  come from the top middle I'm so on I'm [TS]

  concerning with know how I got it in the [TS]

  center I'm assuming you just drag it [TS]

  there but oh okay that's it see that is [TS]

  it Wow [TS]

  all right there you go just just just a [TS]

  command space so it's a so it shows that [TS]

  I just dragged it and let's see if it'll [TS]

  go away that's it you got it [TS]

  very cool well thanks for that this [TS]

  whole show has just been worth it now [TS]

  and again this side so it's not like [TS]

  someone else dragged it to the middle [TS]

  the screen of my computer it's my [TS]

  account of my computer I must have done [TS]

  it but completely forgot about it [TS]

  and speaking of like you mentioned [TS]

  opening files from the finder that's one [TS]

  utility that I haven't I haven't checked [TS]

  whether it's been ported to line and I [TS]

  really hope it can be ported line is a [TS]

  default folder to use that I don't so [TS]

  that's my go-to for like for example a [TS]

  file that's selected in the finder [TS]

  opening a file at selection in the [TS]

  finder it's an extension to and opened [TS]

  up the open dialog box it's been around [TS]

  since the classic days under various [TS]

  names think we just called the fault [TS]

  folder now it's default folder capital X [TS]

  or 10 or whatever you want to call it [TS]

  and the main thing that it did back in [TS]

  the classic days was it would remember [TS]

  on a per application basis what folder [TS]

  you were last looking at in this [TS]

  application that was the feature that [TS]

  might have been built into applications [TS]

  but you know sometimes it wasn't and [TS]

  it's just maddening like when you know [TS]

  when I'm an image ready [TS]

  dating myself for classic Mac OS web [TS]

  development I manage ready I want to I [TS]

  want to see this folder when I'm opening [TS]

  I when I see this folder when I'm saving [TS]

  but online I'm in my text edit I want to [TS]

  see this folder when I'm opening but [TS]

  this folder when I'm saving and that was [TS]

  basically my default photo of the [TS]

  application it has since expanded to be [TS]

  a much more capable you know it's come [TS]

  over to Mac OS tana obviously has got [TS]

  tons and tons of features and one of my [TS]

  favorite ones that I also used in the [TS]

  classic days and the latter classic days [TS]

  was when you have an open dialog box in [TS]

  front of you you can hold the modifier [TS]

  key and bring your mouse over we're open [TS]

  windows in the finder would be if you [TS]

  know there [TS]

  read underneath all your windows because [TS]

  you got a million apps open and then [TS]

  windows and stuff like that but [TS]

  underneath all of them in the bottom you [TS]

  have a Finder window open and you know [TS]

  that the document you want to open is [TS]

  sitting right in that Finder window [TS]

  that's open but that you can't see well [TS]

  you can all down a modify our keystroke [TS]

  put your mouse over that and it [TS]

  highlights the outline of the Finder [TS]

  window and shows you the name of it and [TS]

  you can click on that ghostly outline of [TS]

  the Finder window that's buried beneath [TS]

  all your other windows and the open [TS]

  dialog box switches to that window whew [TS]

  and it has similar features where you [TS]

  can the old one use that used to be able [TS]

  to like modify click on an individual [TS]

  file that you can see poking out on your [TS]

  desktop or something and it would [TS]

  automatically select that file and it's [TS]

  you know you can pick you can pick from [TS]

  recent folders that you've been in [TS]

  favorite folders get tons and tons of [TS]

  features keyboard shortcuts for all of [TS]

  this the folder you were last and in [TS]

  this application throughout you know I [TS]

  think in history with it I use it all [TS]

  the time and an open dialog box without [TS]

  it is just barbaric to me so default [TS]

  folder X yeah and so I defect on their [TS]

  website and it's they say default folder [TS]

  X 4.4.3 corrects problems for Lion users [TS]

  well there you go so looks like they [TS]

  have a rubies out from the 22nd of July [TS]

  so if anybody's having problems I guess [TS]

  that's a you can go get your your oh [TS]

  it's a paid upgrade there you go oh no [TS]

  its update the update is free but it's [TS]

  part of I guess it's the they're just [TS]

  saying that default 4x4 is a paid [TS]

  upgrade so yeah I think I recently had [TS]

  an upgrade I'm still running Snow [TS]

  Leopard here and I it has an automatic [TS]

  built in updater I think I recently did [TS]

  update it but I guess they didn't look [TS]

  at the changes and the reason I wondered [TS]

  whether it would be compatible or not is [TS]

  because for sandboxed applications in [TS]

  Lion the open dialog box is presented by [TS]

  the power box daemon and not by the [TS]

  application itself and default folder is [TS]

  sort of one of those hacks that latches [TS]

  on to a system function and modifies it [TS]

  I don't know exactly how hacky it is but [TS]

  I'm sure it's something that Apple [TS]

  wishes didn't exist and what I would say [TS]

  to Apple is if you don't want it to [TS]

  exist take all the good features turned [TS]

  if I'm sorry default folder X developer [TS]

  if you doesn't think I'm going to [TS]

  destroy your business but it's like I [TS]

  should put some of this in the show [TS]

  notes I wrote something on my blog at R [TS]

  as years ago called paths in the grass [TS]

  or something like that [TS]

  and I was adopting a story that I heard [TS]

  at a Perl conference that predates that [TS]

  as well and it was about Stanford [TS]

  University I think they said when they [TS]

  built the campus they didn't build any [TS]

  sidewalks it into any paved sidewalks [TS]

  instead they just probably grass [TS]

  everywhere and then they just waited a [TS]

  year to see where on the grass people [TS]

  warpath's from walking between buildings [TS]

  mm-hmm but like what the people pick the [TS]

  most efficient comfortable walking path [TS]

  in terms of the terrain and the hills [TS]

  and and who goes from building X to [TS]

  building Y and then after people had [TS]

  worn the grass down they just built the [TS]

  paths where people had worn the the the [TS]

  grass down that's where they put the [TS]

  cement rather than trying to guess where [TS]

  people might go and putting pavement [TS]

  there and having people not going to pay [TS]

  its path because it's not where they [TS]

  would want to walk and that story is [TS]

  used to justify tons and tons of things [TS]

  I used it to a discussion of taxis those [TS]

  on sanity applications that would be [TS]

  memory resonated inside every running [TS]

  process and modify the processes that do [TS]

  something need these types of hacks like [TS]

  default folder 10 where in order for [TS]

  them to provide the functionality that [TS]

  they provide they have to latch on to [TS]

  some system function sort of illegally [TS]

  but you know in unexpected ways they [TS]

  have to take an existing process like [TS]

  the open dialog box and grab on to it [TS]

  and then I'm going to modify you sort of [TS]

  without your knowledge and consent [TS]

  because that's the only way I can [TS]

  provide my functionality Apple doesn't [TS]

  like those because they compromise the [TS]

  stability of the system where it's like [TS]

  well you know we wrote our application [TS]

  not expecting you to jump into our [TS]

  memory image and display your own little [TS]

  window here or do whatever you know or [TS]

  call internal api's and stuff like that [TS]

  so please don't write those things and [TS]

  of course within the Mac App Store they [TS]

  can enforce it and say this is not a lot [TS]

  of the Mac App Store because it modifies [TS]

  this is a system in ways that we don't [TS]

  agree with or whatever but if users like [TS]

  these functions they will buy these [TS]

  products and you know that was my [TS]

  example of a window shade or default [TS]

  folder 10 or I think is being the paths [TS]

  in the grass where people are walking in [TS]

  that path going in that direction you [TS]

  know because that functionality they [TS]

  want and that's a signal for Apple not [TS]

  to keep replanting grass over there and [TS]

  say no no you can't walk there but to [TS]

  say I guess how people obviously want to [TS]

  do this they want this functionality why [TS]

  don't we take this functionality and [TS]

  build it into the operating system or at [TS]

  least provide clean api's for third [TS]

  party developers or do something [TS]

  you know rather than trying to say you [TS]

  can't modify running applications you [TS]

  can't do these you know that make these [TS]

  in-memory hacks or anything like that [TS]

  you can't inject your code into our [TS]

  applications don't just keep trying to [TS]

  close that door look at why people keep [TS]

  doing this because it's not as if you [TS]

  know some phone writes an application [TS]

  that injects itself into every running [TS]

  application if that becomes very popular [TS]

  it's not because people love injecting [TS]

  code and other applications most people [TS]

  have no idea how it works they just know [TS]

  that it does work in fact they may [TS]

  notice that the stability of their [TS]

  system decreases because they run this [TS]

  but they keep running it why do they [TS]

  keep running it because they really [TS]

  really want you know insert feature here [TS]

  they really really want window shade [TS]

  they really really want the features [TS]

  that default folder ten provides they're [TS]

  not doing it for kicks and they're not [TS]

  doing it despite Apple they're doing it [TS]

  because the functionality is useful so [TS]

  and in all these cases with as a popular [TS]

  if it's default holders like I said it's [TS]

  been around for decades now it's not [TS]

  like this is a fluke it's not like you [TS]

  know some crazy new application it'll be [TS]

  a fad it'll go away people have been [TS]

  using this and paying for it for years [TS]

  and years obviously they want this [TS]

  functionality so Apple if Apple doesn't [TS]

  think this functionality is appropriate [TS]

  for the operating system at the very [TS]

  least provide clean supported hooks for [TS]

  applications like default folder 10 to [TS]

  do what it does because I think now it's [TS]

  too complicated we don't want the open [TS]

  set a dialog box to have them any [TS]

  giggles we think that mouse-over thing [TS]

  we use like finder windows is just to [TS]

  undiscoverable and and it doesn't make [TS]

  sense for the target demographic than we [TS]

  want at least provide hooks at least [TS]

  provide an API is as if you want to [TS]

  extend the open save dialog box we made [TS]

  an officially supported extension [TS]

  mechanism kind of like they did with [TS]

  Safari extensions because there were [TS]

  Safari extensions for years like saft [TS]

  and what was that other one there's a [TS]

  couple other popular ones that extended [TS]

  Safari in quote unquote illegal ways by [TS]

  jamming themselves into the memory image [TS]

  and calling Safari API s and extending [TS]

  stuff and Apple didn't like that and [TS]

  they said no no we'll make a real [TS]

  extension mechanisms officially [TS]

  supported Safari extensions and here's [TS]

  the limited set of things you can do but [TS]

  it covers most of the bases you can have [TS]

  your own little windows you can have [TS]

  your own little preferences you can make [TS]

  toolbar buttons you know most of the [TS]

  things that extensions we're trying to [TS]

  do we will now provide an official [TS]

  mechanism for that was the right thing [TS]

  to do and they should do that in all [TS]

  other cases where there are these paths [TS]

  born in the grass from people walking [TS]

  over and over again to this particular [TS]

  destination more [TS]

  more apps sold in the App Store more [TS]

  happy customers it seems like a logical [TS]

  thing for them to do yeah it still comes [TS]

  down to trade-offs because to build the [TS]

  Safari extension mechanism they had to [TS]

  say alright we're going to we have to [TS]

  come up with an API documentation we [TS]

  have to support it we have to make sure [TS]

  our extensions can't crash the browser [TS]

  like is which which they do some gems [TS]

  yeah I know it there is an effort and [TS]

  there is some comrades I think they felt [TS]

  the pressure to do it with Safari [TS]

  because chrome has extensions Firefox [TS]

  has extensions you know and Firefox had [TS]

  extensions for years and years like [TS]

  there was grease monkey and all his [TS]

  other add-ons so the Safari didn't feel [TS]

  the pressure then but once Firefox had [TS]

  it and chrome had it and Chrome's market [TS]

  share started to pass safaris then it's [TS]

  kind of like okay well as extensions to [TS]

  Safari but window shade they held strong [TS]

  on and I actually stopped using window [TS]

  shade recently just to get the last taxi [TS]

  off my system but I was sad about it I [TS]

  really want to use window shade I like [TS]

  window shade I just don't like the way [TS]

  it has to be implemented and I blame [TS]

  Apple for that not that not the [TS]

  developers I I thank the developers on [TS]

  sanity window shade I would have paid [TS]

  for that every year they had a [TS]

  subscription basis and I still know [TS]

  people who want to use it I think Apple [TS]

  should just either build that into the [TS]

  system or make it a hidden preference or [TS]

  build some sort of easy hook so that it [TS]

  can be added because it's popular with a [TS]

  certain subset of people and again if [TS]

  they don't want to build it in because [TS]

  if you build it in then you're you're [TS]

  crushing a developer it's like oh you [TS]

  said they should add default folder 10s [TS]

  functionality to open save and they did [TS]

  and now that developers out of business [TS]

  so good job there well that happens all [TS]

  the time [TS]

  in the Mac world some feature that was a [TS]

  popular buy application ends up being [TS]

  folded into the OS that's just the way [TS]

  life goes you know some some features [TS]

  you could say well they really shouldn't [TS]

  have built in a Photoshop competitor [TS]

  into the OS because now I don't we can't [TS]

  sell Photoshop and that was a bad move [TS]

  so some things some things are arguably [TS]

  not really appropriate as part of the OS [TS]

  and it's just Apple competing with a [TS]

  third-party boot but if you're extending [TS]

  the open and save dialog box that's [TS]

  clearly a core part of the OS and if [TS]

  anyone's going to enhance the open and [TS]

  save dollar box and Apple has enhanced [TS]

  it in each version of Mac OS 10 but if [TS]

  they're going to further enhance it I [TS]

  would think that the makers of default [TS]

  folder 10 would say you know it's not [TS]

  like we didn't see this coming they're [TS]

  always improving the open save dialog [TS]

  box [TS]

  we're kind of flattered that they stole [TS]

  our features we're sad that we now can't [TS]

  sell this product as much anymore they [TS]

  would prefer to Apple it provided clean [TS]

  hooks to extend it so it was like a [TS]

  third party opportunity for everybody to [TS]

  extend the open save dialog box but so [TS]

  far Apple has done neither no API has [TS]

  not integrated the features so I [TS]

  continue to be a happy customer default [TS]

  folder 10 but not as happy as I would be [TS]

  if any of those other two scenarios we [TS]

  should add a link add that to your list [TS]

  put that in the in the the show links to [TS]

  that [TS]

  yep the 4x10 further there lion support [TS]

  it's important for people that maybe [TS]

  didn't realize that it it worked online [TS]

  so I'm gonna check that out I actually [TS]

  you haven't used a felt product in [TS]

  before so it's one of those things that [TS]

  people from classic know about kind of [TS]

  like window shade because if you came to [TS]

  Mac OS 10 and never use classic you [TS]

  wouldn't know window shade ever existed [TS]

  and you would never seek it out [TS]

  same thing with if you didn't know a [TS]

  default folder didn't know that name or [TS]

  didn't know of the features you wouldn't [TS]

  be seeking out something that does that [TS]

  in Mac OS 10 if you had never used it [TS]

  right so for all of us classic guys we [TS]

  were looking for things that work like [TS]

  or replace or are actually the exam [TS]

  exact product as the things we used in [TS]

  classic one example of that is the I [TS]

  remember complaining a lot about the [TS]

  Apple menu in Mac OS 10 that it wasn't [TS]

  you know the old Apple menu was an older [TS]

  where you could chuck stuff in and then [TS]

  whatever you threw in that folder would [TS]

  appear in the menu so you could make [TS]

  little sub folders full of applications [TS]

  and and stuff like that and you can [TS]

  arrange it together or a custom menu in [TS]

  the upper left hand corner to find [TS]

  frequently accessed items and when Mac [TS]

  OS 10 came out Apple said no you can't [TS]

  customize the Apple menu anymore the [TS]

  contents of the Apple menu is you know [TS]

  it's about this Mac and like three or [TS]

  four other little things and then quit [TS]

  shutdown sleep logout and that's it you [TS]

  can't you can't add stuff to it and a [TS]

  classic Mac OS people like me were [TS]

  saying well that was where I went to [TS]

  launch all my applications and open all [TS]

  my recently used folders and stuff [TS]

  what's the equivalent of that so I'll [TS]

  just throw it in the dock the dock is so [TS]

  much worse the dock takes up this huge [TS]

  amount of space you can't add too many [TS]

  things to it there was no like [TS]

  subfolders initially where you couldn't [TS]

  you know navigate down five levels into [TS]

  the hierarchy [TS]

  why not just use the Apple engine for [TS]

  that and Apple said no no we're not [TS]

  doing that what Apple should have done [TS]

  and what the class [TS]

  like macros people like me eventually [TS]

  did was introduced something better fine [TS]

  you don't like the Apple menu you don't [TS]

  think like people throwing stuff in [TS]

  there you want to use the Apple menu for [TS]

  something else you don't want it all [TS]

  clutter it up fine give us a better [TS]

  alternative and Apple said well our [TS]

  better alternative is the back and you [TS]

  know power user support unquote but like [TS]

  me we're saying that's not as good it's [TS]

  not as good for reasons XY and Z I want [TS]

  something better and when something [TS]

  better came along it wasn't from Apple [TS]

  it was basically for me Quicksilver I [TS]

  can launch with Quicksilver much faster [TS]

  than I ever did could with the classic [TS]

  you know Apple menu that's what I was [TS]

  looking for I was looking for Apple to [TS]

  say you know command space the first few [TS]

  letters your application is going to [TS]

  make you way happier than the [TS]

  customizable Apple in you ever did and [TS]

  that is totally true and so I don't give [TS]

  a thought to the Apple menu anymore I [TS]

  have no bitterness about the Apple man [TS]

  you're not working like it did before [TS]

  because Quicksilver is so much better it [TS]

  does you know even though the [TS]

  functionality seems to be not equivalent [TS]

  it's not a menu full of items you can [TS]

  customize it's not exactly the same [TS]

  mechanism the things I use it for [TS]

  quickly finding and launching [TS]

  applications are the same and that's [TS]

  what I was looking for for Apple way [TS]

  back when when I was complaining about [TS]

  the Apple menu was either keep what [TS]

  we've got or give us something just as [TS]

  good or give us something that's better [TS]

  even if a thing that's better isn't [TS]

  totally different like Quicksilver [TS]

  whoever even thought of that you know [TS]

  command space and then this weird window [TS]

  comes up or you can type stuff it's [TS]

  nonsensical but in practice it in [TS]

  practice it's great so that's another [TS]

  example of the varying scenarios of [TS]

  taking away things that people are used [TS]

  to without providing a replacement it's [TS]

  better if you you can provide a [TS]

  replacement that's that's even better [TS]

  even if it's totally different let's [TS]

  take a break and talk about one of our [TS]

  sponsors for this episode this episode [TS]

  is brought to you by Shopify comm it is [TS]

  the internet's internet's most elegant [TS]

  customizable and affordable hosted [TS]

  ecommerce platform with Shopify you can [TS]

  take advantage of their thriving theme [TS]

  and application community and you can [TS]

  add beauty and depth to your site you [TS]

  know with Shopify and you may not have [TS]

  you might not know this is that you can [TS]

  actually customize your storefront with [TS]

  your own HTML CSS and even if you want [TS]

  you can use your own JavaScript so for [TS]

  5x5 listeners for a limited time [TS]

  you can join Shopify and enjoy your [TS]

  first three months for free and to do [TS]

  that when you go join make sure you use [TS]

  the discount code 5x5 that's the number [TS]

  5b y and then the number five so be sure [TS]

  to check out out Shopify at Shopify comm [TS]

  which is a shop in minutes and a [TS]

  business for life alright that's so I [TS]

  have the show and follow up I think [TS]

  that's all the follow up I have all [TS]

  right what's new since since the last [TS]

  show what do you got no this we're still [TS]

  believe it or not wending our way [TS]

  through things covered in my lion [TS]

  article I think maybe this will be the [TS]

  last one so this is the the epic article [TS]

  that you do for every major release at [TS]

  at ARS technica that's right and we [TS]

  talked about lots of stuff from that [TS]

  article so far taking a section each [TS]

  show or whatever and there's one section [TS]

  this is something people wanted me to [TS]

  talk about before my line review came [TS]

  out I sort of had a moratorium of [TS]

  talking about lion features on the [TS]

  podcast for house I'll sit you know save [TS]

  it for the review visit if I talked [TS]

  about it I would feel like I was just [TS]

  reading from my review in progress so I [TS]

  just wanted to have a radio silence to [TS]

  the review come out then we have the big [TS]

  review and we can talk about it so [TS]

  people were constantly asking me after [TS]

  WWC you got to talk about this thing [TS]

  called arc when is John gonna talk about [TS]

  arc on the show and I said no no wait [TS]

  for the review to come out and the [TS]

  review came out and then we talked about [TS]

  the review and like four or five shows [TS]

  and still never got the arc so today I [TS]

  think is the day we will finally talk [TS]

  about arc and like all the other things [TS]

  that I've talked about in line you [TS]

  should just go to the e section of my [TS]

  line review and there you will find a [TS]

  pretty big dump of what I have to say [TS]

  about arc so I'm not going to repeat [TS]

  that entire section it's linked in the [TS]

  show notes you should read it you should [TS]

  pause now and read it if you haven't [TS]

  read it because I will assume you have [TS]

  already read it understand it but I'm [TS]

  just going to sort of hear some of the [TS]

  sites this is page 11 for those falling [TS]

  at home on the website I think it's 10 I [TS]

  was saying go to page 10 because 10 [TS]

  gives context 11 talks about the [TS]

  specific estar oh you're right you're [TS]

  right you're right yep you are correct [TS]

  page 10 alright so brief recap the [TS]

  reason people were [TS]

  talking people kept asking me to talk [TS]

  about work because I had a previous show [TS]

  which was episode 14 or something let me [TS]

  look at the the notes here [TS]

  oh yes episode 14 was entitled a Dark [TS]

  Age of objective-c I think on this shows [TS]

  book ending 14 on 13 and 15 I also [TS]

  talked about similar issues but what I [TS]

  was discussing was a series of articles [TS]

  I wrote years ago called Copeland 2010 [TS]

  which was about how Apple's use of [TS]

  objective-c and cocoa api's which are [TS]

  which is a language and an API created [TS]

  for next computer back in the 90s I [TS]

  guess it 1989 was objective-c and then [TS]

  in the early 90s next and everything how [TS]

  that could end up being a problem for [TS]

  Apple going forward because all of its [TS]

  competitors on the desktop and mobile [TS]

  platforms have languages and api's that [TS]

  are higher level that they don't they [TS]

  don't make the developers deal directly [TS]

  with the memory that their memory safe [TS]

  that they don't require manual [TS]

  allocation of the allocation of memory [TS]

  that they have higher level concepts [TS]

  they're not a superset of C and in the [TS]

  series of articles and in my various [TS]

  follows up follow-ups that series of [TS]

  articles most of which are linked from [TS]

  the arc section of my line review I [TS]

  talked about both sides of it on the one [TS]

  hand Apple using objective-c is an [TS]

  advantage for them particularly in [TS]

  mobile because it's lower level because [TS]

  you can get more efficiency out of it [TS]

  you can mix easily with existing C code [TS]

  and C libraries the cocoa API it being [TS]

  so old is an advantage because mature [TS]

  and time-tested and refined and polished [TS]

  and has you know it's not something [TS]

  brand new debt is untested in real world [TS]

  applications people have been building [TS]

  applications with these next-step api's [TS]

  for years and years before Apple even [TS]

  came along and now it's even better [TS]

  these are all advantages of objective-c [TS]

  and cocoa the disadvantages I was saying [TS]

  is that programming languages just get [TS]

  higher level over time back in the dawn [TS]

  of the Mac huge sections of the [TS]

  operating system and many of the [TS]

  applications were written in assembly [TS]

  which is unheard of today you would [TS]

  never write a GUI application and [TS]

  assembly or anything having to do with [TS]

  the GUI application and assembly except [TS]

  maybe some little tight loop somewhere [TS]

  for some numeric computation but even [TS]

  then it's not that common these days [TS]

  and C and C++ have been dominant for [TS]

  years and years but in in say after in [TS]

  the 2000s whatever you want to call this [TS]

  millennium decade most other development [TS]

  platforms have started to switch away [TS]

  from C C++ to other languages that are [TS]

  higher level so Java obviously came and [TS]

  just covered the earth with a memory [TS]

  safe language where there are no more [TS]

  pointers and there's no more dealing [TS]

  with memory manually this garbage [TS]

  collection it looks a lot cut a lot like [TS]

  C++ and it still got the same kind of [TS]

  bondage and discipline over static [TS]

  typing and stuff like that [TS]

  but you don't have to deal with memory [TS]

  and it's unquestionably a higher-level [TS]

  language than C or C++ and then [TS]

  Microsoft of course says c-sharp in its [TS]

  common language runtime and its various [TS]

  things built on top of that again memory [TS]

  safety similar to C++ very similar to [TS]

  Java but higher-level language [TS]

  constructs like linked to sequel and [TS]

  stuff like that things that are not [TS]

  really easier or even possible in many [TS]

  cases with a low-level language like C [TS]

  and my argument way back when it because [TS]

  it's 2005 or so is that Apple needs a [TS]

  plan here because you don't just come up [TS]

  with a new language and API overnight [TS]

  you can't say well you know objective-c [TS]

  and these next API guys were great but [TS]

  next year we're gonna have a new one you [TS]

  you can't just you know you have to [TS]

  takes years and years and years to [TS]

  transition and you have to make sure you [TS]

  what you're transitioning to is good and [TS]

  say what are they going to transition to [TS]

  it they can they don't want to use a [TS]

  competitor's language they don't use [TS]

  Java for example because back then you [TS]

  know that was Suns thing and you can [TS]

  look at Google using its don't call it [TS]

  Java Java thing on the dalvik VM their [TS]

  current legal woes with Oracle and all [TS]

  that business [TS]

  I don't think Apple wants any part of [TS]

  that the common language runtime there's [TS]

  this mono and net with an open source [TS]

  inhalation of net is this mono runtime [TS]

  and the c-sharp language is standardized [TS]

  but Microsoft mostly controls it does [TS]

  does Apple want to adopt Microsoft's [TS]

  language and API stack probably not I [TS]

  mean they like being masters to the own [TS]

  destiny so I said Apple if you're going [TS]

  to yeah there's going to come a day when [TS]

  the fact that people have to deal with [TS]

  pointers in manual memory allocation is [TS]

  going to be a problem for you and 2005 [TS]

  people left so that's ridiculous it's [TS]

  perfectly fine the next developer said [TS]

  we've been doing this for years you [TS]

  don't know what you're talking about our [TS]

  API is are all better than theirs [TS]

  doesn't matter that [TS]

  is higher-level the API suck next up [TS]

  api's are awesome most of that is [TS]

  actually true but you know you can't you [TS]

  can't hold back the tide at a certain [TS]

  point it's just going to become [TS]

  ridiculous to be dealing in a language [TS]

  where you can accidentally scribble all [TS]

  over your own memory or you can [TS]

  accidentally access something off the [TS]

  ends of an array and crash your entire [TS]

  application you know or where you have [TS]

  to manually or allocate memory or retain [TS]

  and release and stuff like that it'll [TS]

  just end up looking silly no I said in [TS]

  later follow-ups that the mobile the [TS]

  dawn of the mobile age has given Apple [TS]

  and extension or stay of execution [TS]

  because on mobile you have less memory [TS]

  less CPU everything else is just tighter [TS]

  and it's kind of like going back in time [TS]

  platform wise say ah season aren't you [TS]

  glad that we have this awesome sea based [TS]

  language and API and we can be fast and [TS]

  memory efficient than our batteries last [TS]

  a long time and our competitors have [TS]

  these VMs they're you eyes aren't smooth [TS]

  because they're garbage collector is [TS]

  running and making everything stutter [TS]

  that has made it more feasible for Apple [TS]

  to stick with this but it all does is [TS]

  delay things so again I started asking [TS]

  now here we are in 2011 so what what's [TS]

  Apple going to do about this it seems [TS]

  like they have a problem here against [TS]

  their competitors and their competitors [TS]

  for the most part I've already paid the [TS]

  very painful price to convert from what [TS]

  they had before to this new thing it's [TS]

  always like a long horrible painful [TS]

  process too fast Microsoft about it [TS]

  Google had the advantage of starting [TS]

  from scratch with a memory manage [TS]

  language they didn't have to deal with [TS]

  that same thing with like webOS or [TS]

  whatever with using HTML and JavaScript [TS]

  and poms platform despite pom apparently [TS]

  not doing well selling devices its OS [TS]

  has gotten nice reviews and its API is [TS]

  not low level like apples in all cases [TS]

  they think they have some native API for [TS]

  making games but they're there GUI API [TS]

  is much higher low so @ww C 2011 Apple [TS]

  made an announcement that they had [TS]

  something called Ark which stands for [TS]

  automatic reference counting now in the [TS]

  thing that I linked to in my lion review [TS]

  I talked all about what is reference [TS]

  counting first not automatic growing [TS]

  scan but just plain old what is [TS]

  reference counting it's a way that it's [TS]

  a convention for managing memory for [TS]

  objects in the next step slash cocoa [TS]

  api's and it's very it's existed for a [TS]

  very long time to be a cocoa developer [TS]

  you used to have to know and [TS]

  understand this stuff it it has to do [TS]

  with retaining a reference to an object [TS]

  that you're going to use and then [TS]

  releasing it when you're done and when [TS]

  nobody else is retaining one then the [TS]

  object gets the allocated automatic [TS]

  reference counting this thing that they [TS]

  introduced is basically the same as [TS]

  reference counting except that you don't [TS]

  have to write the parts where it says [TS]

  retain this release that auto release [TS]

  that the compiler will write it for you [TS]

  so you take your existing program it's [TS]

  just the one you wrote according to the [TS]

  Coco rules with retain release so on and [TS]

  so forth and release and remove all the [TS]

  calls to retain release and auto release [TS]

  just erase them all and then compile [TS]

  your program and the compiler will [TS]

  figure out where it needs to retain [TS]

  where it needs to release and all that [TS]

  stuff so the name is very apt automatic [TS]

  reference counting its reference [TS]

  counting memory it's not a garbage [TS]

  collector it's not anything like Java it [TS]

  doesn't introduce memory safety it [TS]

  doesn't remove pointers doesn't know [TS]

  anything like that all does is say we [TS]

  don't want you guys to have to write [TS]

  this memory management code anymore [TS]

  we'll write it for you and it will be [TS]

  more efficient you'll have to write [TS]

  fewer lines of code and it will be more [TS]

  error-free so that's what arc is and a [TS]

  lot of people are asking me well doesn't [TS]

  it solve the problem you were talking [TS]

  about with this Copeland 2010 business [TS]

  or isn't this their Apple solution to [TS]

  this problem of having a low-level [TS]

  language and my answer mostly is arc is [TS]

  good but and it helps but it doesn't [TS]

  really address the the problem that I [TS]

  was talking about the thing is [TS]

  interesting about arc is that what it [TS]

  does do is reveal that Apple agrees at [TS]

  least to some degree that there is some [TS]

  sort of problem here that they're behind [TS]

  in some regard if they thought [TS]

  everything was fine like our language [TS]

  and API is the best there's no problem [TS]

  with that we are ahead of our [TS]

  competitors in all areas they wouldn't [TS]

  be undertaking an effort like this what [TS]

  what this effort shows is that they [TS]

  agree that there are things about other [TS]

  platforms mobile and desktop then make [TS]

  them more attractive than Apple's [TS]

  platforms and they pick this makes me [TS]

  think that they believe the number one [TS]

  problem that new developers coming over [TS]

  from another platform or something will [TS]

  say is like are I'm going to try to [TS]

  learn how to develop Rio Esther for the [TS]

  Mac or something and they start learning [TS]

  about cocoa and they say I have to do [TS]

  hey release yeah as someone we talked [TS]

  about this over email and as someone who [TS]

  is you know just familiar with with with [TS]

  cocoa development in an iOS development [TS]

  where I've just kind of gone in and and [TS]

  just started becoming familiar with it I [TS]

  describe myself to you as a newbie to it [TS]

  so that I'm not um you know I know what [TS]

  I know what you're talking about but I [TS]

  know exactly what you mean to where I [TS]

  was I was following along you know [TS]

  Stanford does all those those iTunes U [TS]

  videos and I think they have a couple [TS]

  that are on iOS development and there is [TS]

  that whole section it's very early on [TS]

  where they teach you how to how to [TS]

  allocate and deallocate memory and it [TS]

  can definitely be for someone that's [TS]

  coming me from developing for the web [TS]

  it's very much a huge shift yeah and [TS]

  it's so fundamental or used to be so [TS]

  fundamental to object to see that they [TS]

  would teach it to you in like lesson two [TS]

  and you'd be like boy I want to know how [TS]

  to write an app why you telling me about [TS]

  like memory like and especially even for [TS]

  older developers who have been in the [TS]

  business long time they're like I gave [TS]

  that stuff up you know years ago I was [TS]

  so happy they moved to Java or C sharp [TS]

  or whatever I didn't have to deal with [TS]

  that crap and Here I am using the quote [TS]

  unquote world's most advanced operating [TS]

  system which was the slogan for Mac OS [TS]

  10 not iOS but either way I'm using this [TS]

  wizzy new thing on my cool iPhone or my [TS]

  Mac and I have to manually manage memory [TS]

  not it's not that it's that hard and you [TS]

  and their advantages of retaining [TS]

  released memory management over garbage [TS]

  collection in some particular scenarios [TS]

  which Apple loves to emphasize in terms [TS]

  of not having to stall for garbage [TS]

  collector to run and stuff like that but [TS]

  from a developer's perspective [TS]

  especially developer coming from another [TS]

  platform it seems barbaric people don't [TS]

  like going backwards you know and web [TS]

  development again JavaScript you learn [TS]

  to deal with this stuff table scripting [TS]

  what types really so this is a weakness [TS]

  that that Apple is basically admitting [TS]

  exists in their platform because why [TS]

  else would you it you know introduce [TS]

  this initiative to make it so that [TS]

  people don't have to write retain your [TS]

  release code and and not only just [TS]

  making this like an option please go [TS]

  ahead garbage collection for Objective C [TS]

  for a while to and I go into in the line [TS]

  review all the reasons why garbage [TS]

  collection was not a good fit for [TS]

  Objective C but it existed but it was [TS]

  never really promoted that heavily Apple [TS]

  didn't make all fits apps garbage [TS]

  collected it wasn't the officially [TS]

  recommended practice for new application [TS]

  so on and so forth [TS]

  and with ARC it's different with arc [TS]

  when you make if you get Lyon and [TS]

  install the developer tools and say I [TS]

  want to make a new iOS application or [TS]

  new cocoa application it makes it [TS]

  enables arc like it's the default this [TS]

  is the way they want people to write [TS]

  their applications they are committed to [TS]

  it they're going to make it work and [TS]

  they want to remove this whole retaining [TS]

  released business from their platform so [TS]

  it's easier for developers to adopt says [TS]

  less work you know and they want [TS]

  everyone to use it not just newbies but [TS]

  even old guys who know exactly how to do [TS]

  retaining release in their sleep you [TS]

  know everyone makes mistakes even the [TS]

  the old hands at this every once in a [TS]

  while it's like they have to run the [TS]

  leak detection thing so I forgot I'm [TS]

  over releasing here or I forgot to [TS]

  release this or I have a you know a [TS]

  cycle here now that arc doesn't break [TS]

  cycles either reference cycles where a [TS]

  references B&B references a nothing else [TS]

  in the program references them and a and [TS]

  B never go away arc doesn't solve that [TS]

  either you have to it gives you some [TS]

  tools to solve but we can use weak [TS]

  references so that you make a we [TS]

  reference B and then B back to a with a [TS]

  weak reference so that the weak [TS]

  reference doesn't count towards the [TS]

  reference count so that those two things [TS]

  will eventually be the allocated so it [TS]

  gives you tools to do that but you still [TS]

  have to manually create that weak [TS]

  reference remember that a already points [TS]

  to B so when you point B back they don't [TS]

  just make a regular reference make it a [TS]

  weak reference it's it's better than [TS]

  nothing but it's still not like garbage [TS]

  collection which can find break cycles [TS]

  and clean up memory that it notice is [TS]

  not reachable from the rest of the [TS]

  program now and again the I swear my [TS]

  copeland 2010 thing it doesn't make [TS]

  objective-c memory safe it doesn't [TS]

  remove pointers it doesn't do any of [TS]

  those things which mostly what I was [TS]

  talking about it wasn't so much that I [TS]

  was sending Objective C it's a pain [TS]

  because you have to manually manage [TS]

  memory I was saying Objective C is lower [TS]

  level and all the things that go with [TS]

  that the advantages and the [TS]

  disadvantages eventually the [TS]

  disadvantages will start dwarfing the [TS]

  advantages I guess we're still not at [TS]

  that point because Apple's mobile [TS]

  platform and particulate e still is [TS]

  doing extremely well in terms of both [TS]

  perceived in actual performance battery [TS]

  life and a lot of that is attributable [TS]

  to its use of low-level language so I [TS]

  don't know when this day reckoning will [TS]

  come and I don't know what Apple's plans [TS]

  are the very end of the line arc my of [TS]

  my line read where I talk about arc I [TS]

  said well but you know let's let's [TS]

  crystal ball this [TS]

  so what does this say about Apple's [TS]

  future what are they planning on doing [TS]

  and my tea leaf reading is that all [TS]

  right so this this says that Apple [TS]

  realizes this some sort of problem so [TS]

  I'm going to extrapolate from that and [TS]

  say that they realize that they can't [TS]

  stick with objective-c [TS]

  forever like this is not not just that [TS]

  Objective C has one or two disadvantages [TS]

  but that they realize the full extent to [TS]

  which Objective C is behind other [TS]

  languages you know they realize the [TS]

  advantages as well which is why they [TS]

  didn't go with garbage collection or you [TS]

  know they said that we want to retain [TS]

  our advantages for as long as possible [TS]

  but we want to minimize your [TS]

  disadvantage but eventually we're going [TS]

  to have to make that leap so that's my [TS]

  first tea leaf reading is that Apple [TS]

  realizes there there is a better way and [TS]

  they want to get to that better way [TS]

  somehow the second thing I'm reading the [TS]

  tea leaves here is that the Apple is not [TS]

  a believer in virtual machines and [TS]

  garbage collection for the sake of [TS]

  saying we have a virtual machine garbage [TS]

  collection so you know dalvik on the [TS]

  Android platform has a virtual machine [TS]

  has garbage collection c-sharp the [TS]

  common language runtime dotnet this [TS]

  garbage collection in a virtual machine [TS]

  Apple has is not creating a virtual [TS]

  machine as far as I could tell and you [TS]

  know and they don't seem to be big fans [TS]

  of garbage collection as in runtime [TS]

  garbage collection but there's some [TS]

  other process while your program is [TS]

  running that finds that memory that's [TS]

  not for referenced anymore and gathers [TS]

  it up into the allocates it and so I [TS]

  extrapolate from all that and say the [TS]

  next thing Apple will probably do or own [TS]

  the next thing but where Apple is [TS]

  probably going is a memory safe compiled [TS]

  language that deals with it that is kind [TS]

  of like the parts of objective-c that [TS]

  cocoa programmers use so in Objective C [TS]

  program you could do anything you can do [TS]

  in a C program you could you know start [TS]

  filling with pointers you could have [TS]

  native C arrays and stuff like that but [TS]

  what Apple wants you to do with the API [TS]

  is you know don't use C arrays yes C has [TS]

  support for a raise you can use little [TS]

  angle brackets to do pointer arithmetic [TS]

  for you it looks like you're accessing [TS]

  an element but it's just math isn't that [TS]

  wonderful all right they say no use NS [TS]

  array or NS mutable array that's our [TS]

  collection class right and same thing [TS]

  with strings yes you can do a pointer to [TS]

  a character and have it be a string and [TS]

  use an alternation don't do that using a [TS]

  string we have a class for that right [TS]

  most of the things that you can do in [TS]

  Objective C program [TS]

  doesn't want you to do when you're [TS]

  writing your GUI app they say call our [TS]

  cocoa API is use our collection classes [TS]

  use our syntax don't you see now you can [TS]

  imagine a language that is to to borrow [TS]

  a phrase from another thing a link in [TS]

  the show notes Objective C without the C [TS]

  where you've got the Objective C api's [TS]

  but you don't have the ability to drop [TS]

  all the way down and to see and then you [TS]

  can make the Objective C API is memory [TS]

  safe where if you're just dealing with [TS]

  objects and you're just calling methods [TS]

  and just using the native collection [TS]

  classes there's no reason to ever to [TS]

  have a role pointer to memory or to ever [TS]

  dereference one or anything like that no [TS]

  yes uh you know Objective C objects are [TS]

  technically pointers one of the covers [TS]

  is on and so forth but I can imagine [TS]

  Apple moving in steps like further [TS]

  ratcheting down the clamps on Objective [TS]

  C because even an arc you can't do [TS]

  certain things an arc you can't have [TS]

  like Africa but the limitations are [TS]

  there's a bunch of limitations well you [TS]

  can't take a you know an NS object or [TS]

  something a pointer to an object and [TS]

  shove it inside a C struct because I [TS]

  can't keep track of it anymore other [TS]

  restrictions on what you can and can't [TS]

  do that you could technically do in a C [TS]

  program but when arc is enabled they say [TS]

  actually we're going to disallow that [TS]

  because we can't make arc work if you [TS]

  can do that we lose track of your stuff [TS]

  so that's not allowed so they're they're [TS]

  adding restrictions to the language to [TS]

  enable more advanced features and I can [TS]

  imagine them adding more and more [TS]

  restrictions until on a per file basis [TS]

  even in like a per lexical scope basis [TS]

  saying in this part of the code here all [TS]

  you can do is call Objective C api's you [TS]

  can't do any of that straight C stuff [TS]

  and in this M in exchange for that or [TS]

  those restrictions you have memory [TS]

  safety and maybe you even have a [TS]

  different syntax and maybe they even [TS]

  give it a name that's a different [TS]

  language right it's some point I think [TS]

  they're come out and say apples new [TS]

  language is blah and what it really is [TS]

  is a way to call cocoa api's in it with [TS]

  language that's memory safe now every [TS]

  time I bring this up everyone says Ruby [TS]

  cocoa or not Ruby cocoa but Mac Ruby and [TS]

  the various other bridge type things Mac [TS]

  Ruby being that the most popular because [TS]

  Mac Ruby Bridges from Ruby collection [TS]

  classes to cocoa glasses where you can [TS]

  program in Ruby which is memory safe [TS]

  right and when you access a Ruby array [TS]

  it uses NS arrays under the covers and [TS]

  then Ruby strings or any strings under [TS]

  the covers and stuff like that I've said [TS]

  in many shows that I am down on bridge [TS]

  languages I don't think that's the way [TS]

  Apple will go even though it's a pretty [TS]

  good bridge and even though they are [TS]

  bridging the collection classes and [TS]

  stuff - under the covers be at Ruby [TS]

  objects or objective-c objects and other [TS]

  covers I think they're more likely to [TS]

  carve out a little language out of the [TS]

  middle out of the heart of objective-c [TS]

  and say this is our new language whether [TS]

  they give it a new name whether they [TS]

  give it a new syntax you know whether [TS]

  it's a file scope thing or a lexical [TS]

  scope thing or a whole program thing I [TS]

  don't know but I think that's the [TS]

  direction they're going but in small [TS]

  little steps is what you're saying and [TS]

  so it's not that yeah because I can't do [TS]

  a a big a big shift and John is there I [TS]

  mean do you think there's even a the [TS]

  demand for this for this you know [TS]

  obviously Ark is probably going to be [TS]

  welcomed by a lot of developers [TS]

  especially those that are new to to [TS]

  working in cocoa framework but do you [TS]

  think there's even a demand for this [TS]

  type of change or or is this I guess I'm [TS]

  asking because I wonder if if the the [TS]

  low-level nosov of working with [TS]

  objective-c and cocoa is is that keeping [TS]

  people from from developing on the [TS]

  platform I mean there's thousands of [TS]

  developers putting stuff in the in the [TS]

  App Store's yeah one of this is a quote [TS]

  from the arc section of my review and it [TS]

  has a link to a great talk by Ed Catmull [TS]

  Pixar which I have promoted on this show [TS]

  many times and have told people seems [TS]

  incredibly boring and is really long but [TS]

  you should just watch it and listen to [TS]

  the whole thing it's very enlightening [TS]

  and the quote is this is quote from my [TS]

  review success hides problems and Apple [TS]

  has been so very successful in recent [TS]

  years that is success hides problems as [TS]

  a direct quote from that Ed Catmull talk [TS]

  and it's totally true [TS]

  Apple has been enormous ly successful [TS]

  with its mobile platform with iOS but [TS]

  success hides problems it doesn't say [TS]

  well it doesn't prove that they have no [TS]

  problems because they've been successful [TS]

  sort of I figure which fallacy that it's [TS]

  not appeal to Authority but it's one of [TS]

  those ones their success hides their [TS]

  problems people are coming to iOS and [TS]

  dealing with retaining release not [TS]

  because they think retaining release are [TS]

  awesome but because that's where the [TS]

  money is that's where the success is [TS]

  that's you know they've sold a lot of [TS]

  devices you know and yes there are [TS]

  people who love cocoa love the next [TS]

  api's and were writing next apps when [TS]

  there was like three users in the entire [TS]

  universe and they still loved it and [TS]

  still said it was the best and maybe [TS]

  you'll never be able to convince those [TS]

  people [TS]

  that that that arc is good there the [TS]

  synthesized attributes ooh good yeah it [TS]

  was always the old developer to say I've [TS]

  been doing this way for decades and I [TS]

  think this way is better and all this [TS]

  newfangled stuff is crap if you can't [TS]

  convince them you know what can you do [TS]

  it's Apple has always been focused on [TS]

  the future and they continue to be [TS]

  they're focused on the new developer [TS]

  who's maybe never developed anything [TS]

  before and they are confused by [TS]

  retaining release or maybe they're [TS]

  coming from another mobile platform [TS]

  another desktop platform and they are [TS]

  disgusted by retaining release and the [TS]

  old next guys say oh you don't know what [TS]

  you're talking about go back to your [TS]

  crappy platform our API so awesome you [TS]

  should you know you should just like it [TS]

  right and look how successful we are [TS]

  obviously what we're doing is better [TS]

  because we've been some you know you [TS]

  have to focus on the future [TS]

  so whether there's a demand or not Apple [TS]

  Apple has to move forward and the path [TS]

  forward is pretty clear in the manual [TS]

  memory management I hope for my [TS]

  grandchildren it's not something they [TS]

  have to deal with in the same way that [TS]

  you know the people who are programmed [TS]

  computers with toggle switches or punch [TS]

  cards that boy I hope my kids don't have [TS]

  to use punch cards and we don't we get [TS]

  to type into you know a text editor and [TS]

  we got a compiler you know we don't have [TS]

  to you don't have to deal with that [TS]

  stuff but even the people are writing [TS]

  assembler I hope we're saying boy I hope [TS]

  people don't have to write thousands and [TS]

  thousands and thousands and thousands of [TS]

  lines of assembler to write an operating [TS]

  system or GUI application or anything [TS]

  like that in the future and we don't we [TS]

  have higher-level languages it only gets [TS]

  higher level right and it's going to [TS]

  happen and it's really really difficult [TS]

  to transition that's the most dangerous [TS]

  time for a company that's that's the [TS]

  that's why Apple I think is doing this [TS]

  slowly in steps because you have to have [TS]

  such an investment in in cocoa and those [TS]

  API is that were derived from next in [TS]

  the compiled they wrote their own [TS]

  compiler right and that's what they're [TS]

  building arc on top of well they adopted [TS]

  LVM and then made it into their own [TS]

  compiler right they have such a huge [TS]

  investment you can just throw that away [TS]

  and say okay well actually now the new [TS]

  we have a new API and a new language and [TS]

  here's this new thing that's so so hard [TS]

  to do which is why I was freaking out [TS]

  about it in 2005 because I know how hard [TS]

  it is to do and if you're gonna do it [TS]

  you got to go on like the ten year plan [TS]

  you can't be on like the the six month [TS]

  plan where you're going to turn it [TS]

  around so I think arc is just the most [TS]

  recent step in what I hope what I [TS]

  sincerely hope is like some two three [TS]

  four five ten year plan inside Apple to [TS]

  get from where they are now to where [TS]

  they want to be with the minimum [TS]

  disruption to their [TS]

  platform to the developers who got them [TS]

  here to the old next guys or to the [TS]

  people came over from classic American [TS]

  West those are the people that sort of [TS]

  got Apple to where they are apples [TS]

  looking to the future but doesn't to [TS]

  piss those guys off either so it has to [TS]

  do it in a series of steps and a certain [TS]

  point there'll be a discontinuity [TS]

  whether that's a marketing discontinuity [TS]

  whether they just simply say we have a [TS]

  new name [TS]

  for the restricted subset of Jeff you [TS]

  see that we want you to write cocoa [TS]

  things and by the way with a new name we [TS]

  introduce a new syntax is mostly window [TS]

  dressing you know it's the semantics of [TS]

  the language make a difference but at a [TS]

  certain point they could introduce a new [TS]

  syntax because they've changed the [TS]

  semantics so much that you don't need to [TS]

  ever use pointer stuff so the fact that [TS]

  you have little stars in front of all [TS]

  your object quote-unquote object [TS]

  declarations is making reminding you [TS]

  that there are pointers to you know [TS]

  there see pointers and new developers [TS]

  using one of these stars all here for [TS]

  biz they never even heard of C like [TS]

  that's the point where you might think [TS]

  about changing the syntax because it's [TS]

  just noise that's not relevant to [TS]

  current development let's go ahead and [TS]

  take another break and talk about our [TS]

  second sponsor for this episode of [TS]

  hypercritical and that is Rackspace now [TS]

  Rackspace has been sponsoring [TS]

  five-by-five now for almost a year and [TS]

  I'm hearing from more and more people [TS]

  about how simple Rackspace cloud is to [TS]

  use to host websites and applications [TS]

  and what people always come back to is [TS]

  the fanatical support that Rackspace [TS]

  offers to its customers so there's ever [TS]

  a problem Rackspace is there to help dan [TS]

  has gotten emails from 5x5 listeners [TS]

  about Rackspace and he shared those with [TS]

  me and I want to share those with you so [TS]

  let's go ahead and want to read an email [TS]

  to you from Chris Gorman who is a [TS]

  listener and he says Rackspace is [TS]

  awesome they are the most reliable and [TS]

  helpful server company I have ever [TS]

  worked with I used them for my first net [TS]

  admin position fresh out of college and [TS]

  he says I ask them all sorts of dumb [TS]

  questions and they always helped me with [TS]

  a smile so if you're building a website [TS]

  or application you should definitely [TS]

  check out Rackspace go to Rackspace comm [TS]

  slash 5x5 so it's not about today or [TS]

  next year that's probably the point [TS]

  you're making in 2005 which is it's it's [TS]

  for as as new crops developers you know [TS]

  come out of school there there's you [TS]

  know maybe our [TS]

  going to be so accustomed to to this [TS]

  type of development anymore and so to [TS]

  keep ahead of it then Apple needs to [TS]

  make some changes you at the last line I [TS]

  think of the of the arc section of your [TS]

  review you said the next few years of [TS]

  WWDC could be interesting [TS]

  so maybe are you hinting that maybe [TS]

  they're going to be rolling out [TS]

  something one or two new things per year [TS]

  perhaps well so they didn't pass WABC as [TS]

  they did stuff like the property syntax [TS]

  where instead of doing objects arrow you [TS]

  know - greater than sign value which is [TS]

  the pointer dereference access stuff [TS]

  like that you could do a dot syntax and [TS]

  the dot was a new syntax they added for [TS]

  accessing properties and so instead of [TS]

  calling uh not instead of the arrow [TS]

  sorry instead of calling the instead of [TS]

  sending the get foo message you could do [TS]

  object dot foo and it would under the [TS]

  covers call the method for you and stuff [TS]

  like that it was a different syntax for [TS]

  common operation for dealing with [TS]

  attributes and a lot of and this was [TS]

  this is not this year this was maybe [TS]

  last year or the year before that and a [TS]

  lot of seasons objective-c developers [TS]

  said why would I just call you know get [TS]

  foo with my square brackets the way I [TS]

  always have or set foo and then you know [TS]

  with value blah blah why would I use [TS]

  this dot syntax on the assignment it [TS]

  looks weird to me it looks like it looks [TS]

  like I'm accessing a structure element [TS]

  but I'm not and it looks kind of like [TS]

  c-sharp or Java or some other syntax [TS]

  that our JavaScript and that's not the [TS]

  way I like I want my objective seat you [TS]

  know there was pushback on that but that [TS]

  was that was a baby step in this [TS]

  direction of you know what are the [TS]

  things that annoy people well people [TS]

  don't like to do getting set they like [TS]

  this dot access of attributes so let's [TS]

  provide that and they don't like [TS]

  declaring things in seven places where [TS]

  you got to do it in the header file then [TS]

  you got to do the implementation you got [TS]

  to make sure they're all in sync and [TS]

  sometimes writing getters and setters is [TS]

  just boilerplate where you're copying [TS]

  pasting the same code over and over [TS]

  again with some names change so let's [TS]

  have a synthesize thing where we can [TS]

  make that code for you and like tiny [TS]

  little steps and at every one of those [TS]

  tiny little steps people grumble and [TS]

  complain and say well here the [TS]

  disadvantages of it versus doing it [TS]

  manually but then eventually sometimes [TS]

  you know you'll see an objective-c [TS]

  developer say I didn't use properties [TS]

  but I finally came around doing and [TS]

  makes things so much easier or you know [TS]

  and any of these things they introduce [TS]

  there's always push back so [TS]

  arc is just one more step arc is not the [TS]

  first [TS]

  it's the biggest step so far because [TS]

  those other things like here are ways to [TS]

  save you typing and we will do stuff [TS]

  that we think you would have typed [TS]

  anyway if you don't want to do it fine [TS]

  type it all out the same way you always [TS]

  did arc is the first time or the saying [TS]

  you actually can't type retain and [TS]

  release anymore run under arc which is [TS]

  the recommended way to do things and you [TS]

  were taking away retain and release from [TS]

  you we're going to handle it just follow [TS]

  these conventions you can do another [TS]

  profile basis and a pro project basis [TS]

  you know it's not like garbage [TS]

  collection where it's global so we want [TS]

  you to adopt it we have a thing in the [TS]

  ID that says make this are compatible [TS]

  and it'll go and erase all your retains [TS]

  and release and convert your project to [TS]

  it you know we're trying to help trying [TS]

  to make bring people along but arc is [TS]

  the first really big step in that [TS]

  direction I say the next years are going [TS]

  to be interesting because I assume this [TS]

  rate of change will accelerate not get [TS]

  slower like they spent many many years [TS]

  getting off GCC which was their old [TS]

  compiler the open source new compiler [TS]

  GCC sampark a new compiler something or [TS]

  other which starts with a C and you know [TS]

  they adopted LLVM and they made their [TS]

  own compiler out of it and that took a [TS]

  long time because they wanted to make [TS]

  their compiler GCC compatible but better [TS]

  than GCC in every possible way they [TS]

  could I think that they paid that price [TS]

  now that they've they did that work and [TS]

  now they're finally free to start [TS]

  running you know and I don't know how [TS]

  long it took them to develop arc but it [TS]

  strikes me as the first thing they could [TS]

  do once I got their head above water [TS]

  with GCC that five GCC is gone all right [TS]

  now finally we have the compiler [TS]

  infrastructure that we always wanted [TS]

  everything's nice and clean and easy to [TS]

  extend what's the first thing we're [TS]

  going to do and the first thing I did [TS]

  was attack retain release right so next [TS]

  year who knows what they'll have in [TS]

  store for us and the year after that and [TS]

  the year after that I expect the rate of [TS]

  change to accelerate towards some [TS]

  unknown destination it sounds it sounds [TS]

  exciting [TS]

  and maybe a good place to to wrap up did [TS]

  you have anything else on on the list [TS]

  for today or do you think that arc was [TS]

  was enough remain the main thing I [TS]

  wanted to get you though people [TS]

  I did mention on past shows that I had a [TS]

  10 word review ten word joke review of [TS]

  line because back when we were talking [TS]

  about how long my lion review was I [TS]

  mentioned that I had a short version of [TS]

  it a friend of mine said I don't want to [TS]

  read your whole line of you can you give [TS]

  me the ten word summary so I did I made [TS]

  a ten word summary [TS]

  this is mostly a joke and it contains a [TS]

  curse word which Dan will not like me to [TS]

  say so I will abbreviate the curse word [TS]

  so we all won't have to be bleeped two [TS]

  people can I was getting ready to mark [TS]

  you on the know I'm not gonna Margot I'm [TS]

  gonna say okay good alright so this is [TS]

  what I originally wrote and I will give [TS]

  you the amendment oh this is the 10 word [TS]

  version upgrade but not right away [TS]

  change is scary effing iOS now I'll [TS]

  unpack this briefly alright so the [TS]

  upgrade but not right away it makes it [TS]

  seem like oh you saying we should hold [TS]

  off cuz it's not good and I shouldn't in [TS]

  I always don't upgrade personally right [TS]

  away like my machines are still running [TS]

  Snow Leopard now and I've talked about [TS]

  this on past shows just because I say in [TS]

  the review the operating system is good [TS]

  and that you should upgrade doesn't mean [TS]

  you should upgrade the day it's released [TS]

  like wait a while see that all your [TS]

  applications are compatible let other [TS]

  people find out what the problems are [TS]

  this is not just Lion every OS release [TS]

  I've always said you don't you're best [TS]

  off waiting a little bit make sure don't [TS]

  don't just guess you know don't upgrade [TS]

  and then find out what's uncle because [TS]

  you can't revert easily at the restore [TS]

  from a backup right you can find out if [TS]

  your apps are compatible go to the [TS]

  developers page like for example before [TS]

  I upgrade the line I would go to the [TS]

  default folder tens page and say is this [TS]

  compatible is that you know all your [TS]

  favorite applications find out they're [TS]

  compatible read the reviews read the [TS]

  reviews first and find out the no you [TS]

  can't run PowerPC applications online [TS]

  find out if you have any PowerPC [TS]

  applications if you don't know how to [TS]

  find out if you have any PowerPC [TS]

  applications Google for Mac OS 10 fine [TS]

  PowerPC application like there are some [TS]

  lists out there that people have been [TS]

  keeping yep [TS]

  right so the my little my first part of [TS]

  upgrade but not right away I could put [TS]

  that in the front of almost every Mac OS [TS]

  10 review upgrade is me saying this is [TS]

  an improvement over the past version I [TS]

  like it a likely direction are taking [TS]

  the operating system the but right not [TS]

  right away is a reminder that like all [TS]

  operating system upgrades [TS]

  don't be nuts and go out there the day [TS]

  it comes out and just installed on your [TS]

  machine and cry when everything breaks [TS]

  like [TS]

  caution is recommended I have to at the [TS]

  end of you make some sort of [TS]

  recommendation like thumbs up thumbs [TS]

  down I give lion a thumbs up but like [TS]

  all operating systems and all big [TS]

  changes like don't don't rush out and [TS]

  upgrade everything and then be sad when [TS]

  things break find out first you have the [TS]

  tools to do it do it [TS]

  tools to do it do it [TS]

  change is scary is the next three words [TS]

  and that's the whole bit about you know [TS]

  changing scrolling and the iOS type [TS]

  behaviors and you know trying to remove [TS]

  the number of things that users have to [TS]

  be concerned about trying to make users [TS]

  take users out of the business of [TS]

  remembering what Windows they open [TS]

  taking users out of the business of [TS]

  managing applications memory and [TS]

  quitting them when they don't want to [TS]

  run them anymore [TS]

  and relaunching them when they need them [TS]

  and all that business like that's change [TS]

  is always scary sometimes it's good [TS]

  sometimes it's bad but it's hard to [TS]

  distinguish especially on day one which [TS]

  one of these changes is going to be [TS]

  something that ten years from now will [TS]

  say god can't believe we ever did it the [TS]

  other way or will say this was a [TS]

  terrible mishap and they have to you [TS]

  know back they go back on that and then [TS]

  the final part was effing iOS and that [TS]

  is a meant to be vaguely humorous [TS]

  reference to the fact that most of the [TS]

  things that people don't like about Lion [TS]

  are due to the influence of iowa's so [TS]

  let's list it so scrolling yeah that the [TS]

  the automatic quitting of applications [TS]

  the gestures all right well maybe not so [TS]

  much the gestures but gestures to [TS]

  gestures for you know changing all the [TS]

  gestures and stuff that the [TS]

  simplification of spaces and everything [TS]

  in Mission Control and like it's iOS has [TS]

  influences everywhere in Lion and [TS]

  whether those changes turn out to be [TS]

  good or bad long term if you're going to [TS]

  lay blame for why it's this line thing [TS]

  annoying me it's basically iOS s fault [TS]

  so the effing iOS there is the that I [TS]

  actually added that because I have the [TS]

  eight word review and I add that in [TS]

  there because it's like we all are upset [TS]

  when someone moves our cheese right [TS]

  where things aren't quite the way we [TS]

  want them to be and I believe that some [TS]

  of these changes in Lion are [TS]

  inappropriate for desktop operating [TS]

  system or at least inappropriate from [TS]

  one running on the 30-inch monitor or [TS]

  something and you know and I blame those [TS]

  changes on the success of iOS and on iOS [TS]

  coming back there now most of the things [TS]

  I think are actually good you know the [TS]

  things that iOS are doing is a proof of [TS]

  concept saying see computing can be like [TS]

  this and it's better at the vast [TS]

  majority of them I believe that to be [TS]

  the case but it still doesn't mean that [TS]

  people aren't going to be all cranky [TS]

  about it and when they're cranky about [TS]

  it that's the sentiment F in iOS I was [TS]

  getting all inside my Mac [TS]

  nestle change my scrolling yeah I mean [TS]

  even to the scroll Direction isn't it [TS]

  you know that's that's my ten read [TS]

  review upgrade but not right away [TS]

  changes gary effing iOS much shorter to [TS]

  read even my expansion of it was shorter [TS]

  than ringer you recommend reading the [TS]

  review if you want a slightly more [TS]

  nuanced and less glib take on the [TS]

  operating system i also recommend the [TS]

  review it's um it's a great tape it's a [TS]

  great book into all the little pieces [TS]

  especially for people that really like [TS]

  that are the listeners are the show that [TS]

  really like to know every every small [TS]

  bit and then you know read some [TS]

  intelligent commentary on on all the [TS]

  different changes in in lion [TS]

  so john are just a wrap-up are you going [TS]

  to upgrade soon then I mean it's been [TS]

  what a month [TS]

  yeah I'm still the main thing is holding [TS]

  me back on my home max is quicken which [TS]

  I used oh I think you've been you were I [TS]

  don't talk about doing the podcast with [TS]

  Dan or on Twitter but yeah I do remember [TS]

  you talking about yeah so I've been [TS]

  auditioning changes that I've looked at [TS]

  a couple of them I haven't pulled the [TS]

  trigger on any of them yet I made I [TS]

  don't know it's not a long term solution [TS]

  but I may just leave an old Mac running [TS]

  yeah yeah you know but other than that [TS]

  I've also been checking my all my [TS]

  applications and updating them all and [TS]

  I'm getting there I'm in no hurry to [TS]

  switch to lion mmm one of the other [TS]

  things that holding me back is I have a [TS]

  lot of compiled UNIX software I have ten [TS]

  different databases compiled and often [TS]

  various directories several versions of [TS]

  my sequel and Postgres and stuff and [TS]

  several versions of Perl or hiding in [TS]

  there and God knows what else I have [TS]

  custom versions of read line I have lots [TS]

  of you compiled UNIX software I want to [TS]

  make sure all that will build cleanly on [TS]

  line before I go or because s when I [TS]

  upgrade it's not just me upgrade and [TS]

  then I got to go back in and make sure [TS]

  my existing installs and user local [TS]

  they'll still be fine they'll be there [TS]

  but do they all work and is it now is [TS]

  usually the time where I bite the bullet [TS]

  and say okay now it's time for me to [TS]

  upgrade my install Perl from like 512 to [TS]

  514 2 or whatever the latest is stuff [TS]

  like that for developers is not just [TS]

  about whether you like the scrolling or [TS]

  not it's whether you can actually like [TS]

  jump back in and do your development [TS]

  work is your environment set up exactly [TS]

  how you want it right and that's even [TS]

  more so at work it works even worse [TS]

  because you know I have at home I break [TS]

  it it's okay but at work I can't it'll [TS]

  you know [TS]

  I need to be able to do my work on the [TS]

  work machine so and also at work I have [TS]

  requirements to have my disk encrypted [TS]

  and I use PGP for that now so I have to [TS]

  go through the IT department say hey is [TS]

  it okay if I upgrade to Lion if I use [TS]

  the built-in encryption is that you know [TS]

  certified for use at the company there's [TS]

  a whole bunch of bureaucratic business [TS]

  of delaying me at work so I'll probably [TS]

  upgrade at home within the next few [TS]

  months if I get around to visit it's [TS]

  also like set aside several hours in one [TS]

  day for me to do the upgrade and make [TS]

  sure everything works you know because I [TS]

  don't want to just like throw the [TS]

  upgrade on there and then everything [TS]

  breaks and not have time to to fix stuff [TS]

  you need to set aside a weekend to make [TS]

  that happen [TS]

  yeah at least if you have multiple [TS]

  machines yeah actually if I I just got a [TS]

  new machine for my wife so hers will [TS]

  come with Lion so hey I don't have to [TS]

  upgrade her and her old machine will [TS]

  probably be the quicken machine in in [TS]

  the near term but obviously that's not a [TS]

  long-term solution because eventually [TS]

  that machine's gonna die or break or you [TS]

  know you can't be running quicken and in [TS]

  you know ten years from now on that old [TS]

  Mac yeah especially since and this is [TS]

  that the whole financial software thing [TS]

  is probably a whole whole topic for a [TS]

  whole show but you know they they see [TS]

  supporting certain versions too after a [TS]

  while as far as interacting with banks [TS]

  and stuff like that so eventually yes [TS]

  certain and I yeah so I'm still I'm [TS]

  holding off not for reasons that having [TS]

  to do with line mostly just to have to [TS]

  do with the amount of time I have to [TS]

  deal with it and laziness and you know [TS]

  it has to be said general satisfaction [TS]

  with Snow Leopard like Snow Leopard [TS]

  works I never had any problems I haven't [TS]

  had a kernel panic on this Mac Pro in [TS]

  like two years I can't remember the last [TS]

  time I had one it's like a disruption to [TS]

  my environment you know and the thing is [TS]

  I'm already at the point now where I [TS]

  want upgrade to use this is what happens [TS]

  when new versions of applications come [TS]

  out and you're like aw man I want to [TS]

  check that always lion only like it's [TS]

  already happening even though it's not [TS]

  lying only that like online it has some [TS]

  like solver which I love I should I wish [TS]

  these guys would sponsor the program [TS]

  there I don't they don't have to sponsor [TS]

  it because everyone raves about it I [TS]

  think Marco raves about him too on [TS]

  Twitter yes sou lver awesome application [TS]

  changed my life when I found it he has [TS]

  been making lion updates where does [TS]

  automatic restore and stuff and I hate [TS]

  saving my solver she [TS]

  I hate the little red dot in the thing [TS]

  and I hate when I quit solver I gotta [TS]

  remember to save the sheet and stuff [TS]

  like that he's already made lion updates [TS]

  to his app that I assume include resume [TS]

  and autosave and stuff like that and I [TS]

  want to use them now it's like I'm [TS]

  already getting that itch [TS]

  I want to be running lion so I can see [TS]

  the cool new features and the [TS]

  applications that I already have so it's [TS]

  only a matter of time before I succumb [TS]

  to the to upgrade fever great well that [TS]

  sounds like a good place to to wrap up [TS]

  for for this episode [TS]

  as always I'm sure people know how to [TS]

  get a hold of you I assume they probably [TS]

  go to five by five slash contact I don't [TS]

  know where they do is that contact form [TS]

  thing oh yeah somewhere people are [TS]

  finding it buzz it get the feedback yes [TS]

  my five dot TV slash contact is one way [TS]

  to get in touch and I'm sure people will [TS]

  have some some some feedback I'm sure [TS]

  what you get every week so great well [TS]

  that's I think we're gonna wrap it up [TS]

  thanks John for letting me jump in for [TS]

  Dan he's taking obviously some time off [TS]

  to spend with his growing family sorry [TS]

  so so we we wish him the best of course [TS]

  and that's it for this episode of [TS]

  hypocritical and either me or Dan we'll [TS]

  talk to you next week thanks for [TS]

  listening to this episode of [TS]

  hypercritical we'd like to once again [TS]

  thank our sponsors Shopify comm and [TS]

  Rackspace comm please be sure to check [TS]

  them out and let them know that 5x5 sent [TS]

  you [TS]

  you [TS]