Podcast: Play in new window | Download
Subscribe: iTunes | Android | RSS
Justin and Jason discuss one of Pluggio’s new features and Justin’s estimate of Pluggio’s growth rate, Twitter’s recent change to their developer ecosystem guidelines and the inherent risk of developing on the Twitter and Facebook platforms, the variety of SEO strategies available to startups, data driven vs visionary driven development, the status of Appignite and Jason’s development and product strategy, Jason’s upcoming blog post about Facebook, an awesome new DIY pulse laser, the 25 steps to installing and running Diaspora, the best approach for implementing an enumerated type in a database and Justin’s idea for generating a configuration file.
Just thought I wpuld comment while listeming, Jason you really need to consider unit tests and multiple environment possibly in virtual machines. That if done correctly would have caught your PHP bug issue within 30 seconds either before deploying or after.
I can imagine that since you want to export apps a few checks to ensure your core functions work as expected will save a lot of support time. Just something I would consider seriously for Appignite.
That is a great way to describe Facebook. I am 23 and I feel like Facebook is the high-tech version of the American lawn. Everyone is trying to show their old high school friends how green their grass is by posting things that make them look good. All of the artificial posts end up creating a strange world where people’s lives on Facebook become very detached from their lives in reality. Whenever I go out to a party or dinner I feel like the whole thing is a staged photo op. Madness!!! Madness!! end rant.
I think the Facebook idea sounds really good, perhaps in a different format – say a 15 minute segment in a pod-cast… oh wait 😛
I’m unable to download any Techzing podcasts to my iPhone from the iTunes store. The red circle flashes a few times but then closes. I can download other podcasts without any problem, but Techzing has suddenly stopped working. Is anyone else having the same problem?
@soitgoes – It’s working for me. What system are you using to browse it? (I’m using a Mac. )
The way I do enums thats largely platform independant is to have two tables in the database one called lookuptype and the other lookupvalue.
Enums are defined in the type, and the values exist in the values. The nice thing about this approch is its easy to change anything, even on the fly. You can include heirarchy’s if required (just have a parent id stored), you can keep record versions, know who created things, do soft deletes, store sort orders etc… It also translates to any relational database, and should work just fine in a NoSQL solution with a very simple MapReduce job.
As for performance, I have seen this sort of approch used on some very large applications with multiple millions of rows without issues. The main reason being if you have the correct indexes and use simple ints the join between the 10 or so values to your other tables is of such low overhead its not worth worrying about.
@Justin Thanks for checking. I’m not using any browser actually, just trying to download it direct to my iPhone. Probably just a problem with my iPhone. I can still listen to the show from my browser, so no major worries 🙂
@soitgoes It’s not working for me either (downloading straight to IPhone). It just started with this last episode. All other things are equal, I haven’t had a problem with any other podcasts.
@botj Yes, there does seem to be a problem with download direct to iPhone. I have tried several times over the last couple of days, but no luck. @Justin do you think it could be a problem at soundcloud?
@soitgoes – Yeah it must be a sound-cloud issue I will point them to this thread.
re: database enums.
The way I decide whether to do an enum as an integer field with correlated names in the model versus a separate table with a foreign key is: Does this list need to be changed by the user?
If the user needs to add/rename/remove items from the list, it’s easiest to have a separate table for it so you can do all the normal CRUD operations (which hopefully you have library code or an ORM to handle automatically for you).
But if it’s more of an application-level enum (i.e. it will change only if you decide to change the way the program works, not as a normal course of action that a user would take), put it in the code so it’s easier to find, deploy, version-control [for those of us who use that 🙂 ], etc.
I respectfully disagree with @BenBoyter’s approach — to me this gets too close to “building a database on top of a database”. Just my opinion, and maybe that’s just for the kinds of apps I build (fairly standard websites, CMS’s, CRUD apps, etc. — not apps that generate other apps or platforms that other apps/sites are built on).
-Jordan
LOL, Jason you’re a closet libertarian.