Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
Image

FBML Essentials 85

Posted by samzenpus
from the read-all-about-it dept.
stoolpigeon writes "Facebook became the largest worldwide social site in the middle of last year. If their current pace holds they will pass MySpace as number one in the US some time next year. Those numbers have led a number of people to strike out and develop Facebook applications, hoping to grab a piece of that huge audience. One aspect of writing such applications is knowing Facebook Markup Language, which has been described as the icing on the Facebook API cake. FBML Essentials aims to be the resource that provides hopeful application writers with what they need to use FBML successfully." Keep reading for the rest of JR's review.
FBML Essentials
author Jesse Stay
pages 185
publisher O'Reilly Media, Inc.
rating 8/10
reviewer JR Peck
ISBN 978-0-596-51918-6
summary Facebook Markup Language Fundamentals
FBML Essentials is a slim little volume in the world of massive technical books. The author, Jesse Stay has accomplished something many projects and authors can't seem to avoid, scope creep. This little book stays right on target providing FBML documentation with a few extras as book-ends. One will not be forced to spend half their time with the book skimming over information not directly related to the topic at hand.

The reference portion of the book, as I said, is the bulk of this guide. This section does provide more thorough information than what one would find at the FBML tag section of the Facebook developer wiki. (Which sometimes holds contradicting information for the use of some tags.) There is not only a brief explanation and example but more detailed coverage of options and ramifications. Tags are also grouped in a way that takes into account functionality and what a developer may want to do. This means that while it might not be a thrilling way to go about it, one could read through the reference material in a topical manner while learning how to use FBML in applications.

The first two chapters, before the reference section begins, introduce Facebook applications, walk the reader through prerequisites for development and html considerations within the Facebook environment. This book assumes a solid understanding of markup and specifically html. There is an extremely brief treatment of hosting and general architecture of the Facebook platform.

The introductory material also steps through creating an application with nothing more than FBML. I thought that this was interesting because it means that it is possible to develop and launch an application rather quickly as there is nothing required beyond what is in this guide. This is backed up with an introduction to the FBML Test Console, a tool that allows developers to check their markup without requiring a server.

The last chapter after the reference is a quick introduction to Facebook Java Script. FBJS is a limited form of javascript and Stay does not spend much time with it. There is a quick list of methods, listeners and dialogs with a small amount of illustration on how they might be used as a whole. There are not examples given for each.

There isn't a whole lot here and that ought to be encouraging to anyone who would want to write a Facebook application but doesn't want to invest a huge amount of time. Stay gives an example of building a simple application using nothing more than FBML. It's nice to know that such simple functionality can provide one with an entre into a huge community of potential users. I am also glad that Stay was able to resist the urge to start pulling in every possible aspect of development for Facebook. Instead of a bloated guide the result is a compact and efficient guide to FBML, keeping costs down and avoiding wasted time trying to find what the reader needs.

The index is solid and I highly recommend this handy reference to anyone doing Facebook application development. Of course the use here is limited to Facebook and as they are constantly developing and changing the product, this reference has a definite shelf life. (Though I don't know exactly what that might be.) So this is not a timeless or ground breaking title, but is extremely practical right now.

You can purchase FBML Essentials from amazon.com. Slashdot welcomes readers' book reviews — to see your own review here, read the book review guidelines, then visit the submission page.
This discussion has been archived. No new comments can be posted.

FBML Essentials

Comments Filter:
  • by onion2k (203094) * on Monday February 02, 2009 @01:14PM (#26697023) Homepage

    A free excerpt:

    Chapter One: Naming Your Application.

    In order to gain rapid popularity your application's title must be as insipid and uninspiring as possible. Prefably choose something with a ridiculously inaccurate adjective such as "amazing", "super", or "w1cked", and follow that with a descriptive synonym that maps your application to a real world equivalent; this will inevitably be "wall".

  • note to developers (Score:5, Insightful)

    by liquidpele (663430) on Monday February 02, 2009 @01:19PM (#26697089) Journal
    Note to developers: It appears that if you make your application as silly and insanely annoying as humanly possible, people will use it and continuously sent me messages with it. While you might make money doing this, I have spoken to God and you will in fact be going to hell.
    • Re: (Score:1, Offtopic)

      by sorak (246725)

      Note to developers: It appears that if you make your application as silly and insanely annoying as humanly possible, people will use it and continuously sent me messages with it. While you might make money doing this, I have spoken to God and you will in fact be going to hell.

      You know, I asked god the exact same question and got his reply on video [youtube.com].

      I guess God can be annoying too...

    • Yes, but you know, I'll be using my heaping piles of cash to make sure *YOU* go with me... so I can continue to bombard you with messages from various applications... because that will be HELL for you.

      2 cents,

      QueenB.

  • Or just dive in (Score:5, Informative)

    by Bearhouse (1034238) on Monday February 02, 2009 @01:29PM (#26697231)

    Using the instructions here:

    http://developers.facebook.com/get_started.php [facebook.com]

    • by Erwos (553607)

      The thing they never tell you is that FBML is a straight-up nightmare, and using an iframe is far easier and faster.

    • With how often Facebook changes their API and makes subtle, app-breaking changes to how existing stuff operates, you won't really be able to rely on anything in a published book.

  • Silly (Score:4, Insightful)

    by The Cisco Kid (31490) on Monday February 02, 2009 @01:43PM (#26697419)

    The first time I heard 'facebook' I thought of type-A jocks and stuck-up 'faces' at college. And myspace is the same thing but for a younger set - airhead teenagers and their fanboi's (as well as the younger set of jocks and 'faces')

    Additionally, the code on the VERY few myspace pages I have had the misfortune to have accessed proves that *no one* associated with myspace, either as a user or developer/admin, has ANY clue how to put together an html page that isn't painful to look at.

    • Re: (Score:3, Insightful)

      The whole app thing is a good indicator that MySpace and Facebook have jumped the shark. It's a desperate grasp at the attention of more savvy users and its result is the spamming of everybody with floods of annoying, worthless minutiae(moreso than usual, if that's possible).

      Yes, it's possible to opt out of many of those annoyances but everything that's bad for your privacy and your sanity is enabled by default so you have to play whack-a-mole trying to find what annoying "feature" is coming from where
      • everything that's bad for your privacy and your sanity is enabled by default so you have to play whack-a-mole trying to find what annoying "feature" is coming from where before you find the checkbox to turn it off.

        My sister loves that kind of stuff and there are more people like her in the world than people like you or me.

    • Re: (Score:3, Insightful)

      by Abcd1234 (188840)

      The first time I heard 'facebook' I thought of type-A jocks and stuck-up 'faces' at college.

      Bitter much?

      Just FYI, my circle of predominantly CS-graduate friends is linked up on Facebook. Why? Simple: we've all grown up, moved away, and in a few cases, had families, and FB makes it easy for everyone to stay connected.

      Remember, just because you're angry and convinced that <insert popular thing> is silly, doesn't mean it actually is.

    • Re: (Score:2, Interesting)

      by WraithCube (1391567)
      I once found somebody who bothered to write down all the myspace code and actually figure out how to make it look decent. I was so stunned that I felt out of my chair when I viewed a myspace page and no music started playing, nothing flashed, the color scheme was readable, and the page was easy on the eyes. Of course, the guy did it just for the challenge and happens to be Mike Davidson the creator of newsvine. http://www.myspace.com/mikeindustries [myspace.com]

      So it actually can be done. Just not without spending w
    • OK, OK, mister, I'll get off your lawn!

  • Scope creep? (Score:2, Redundant)

    by eviloverlordx (99809)

    The author, Jesse Stay has accomplished something many projects and authors can't seem to avoid, scope creep.

    I'm not sure that scope creep is a praiseworthy accomplishment.

  • by Viol8 (599362) on Monday February 02, 2009 @01:48PM (#26697481)

    Writing a few lines of a data markup language does not make you a programmer , you have not "developed" anything and hence what you have written is not an "application". At best its a description of functionality but it is NOT the implementation of it which is what the word "develop" in the programming sense means. FBJS may well be a programing language (albeit a noddy one) but FBML is not and I get a teensy bit tired of idiots people pretending they're some amazing app developer because they can grasp how to use *ML. Lets get this straight - a friggin chimp could code in a markup language given 2 hours training.

    • I have to agree with you here. If you spend any amount of time with middle / high schoolers you will inevitably run into one that claims to be a "coder" or "programmer" because they wrote a few lines of CSS to make their MySpace page look like hell.
    • by Per Wigren (5315)

      people pretending they're some amazing app developer because they can grasp how to use *ML.

      To be fair though, there are quote a few *ML [wikipedia.org] dialects that aren't exactly trivial to learn...

    • by neo (4625)

      The to primary things that most Markup Languages are missing that keep them from being programming languages are:

      * Iteration
      * Conditionals
      * Variables

      But that's changing and some ML now contain all three. These, IMO, are the three requirements of a computer language. What do you use as criteria for a programming language?

      • The ML are just responsible for the View part in the MVC architecture.
        To make a complete application, you need also the Model and the Controller.

        • by tyrione (134248)

          The ML are just responsible for the View part in the MVC architecture. To make a complete application, you need also the Model and the Controller.

          You added nothing to counter the parent poster's attempt to claim Markup Languages are soon to be programming languages.

          The MVC paradigm is language agnostic.

          Nevermind the fact that the entire thread from the grandparent poster devolved into a lesson of how poorly most english speakers write in the english language, it's not surprising that the discussion of what is or is not a programming language quickly devolved into snippets of non-sense.

        • The ML are just responsible for the View part in the MVC architecture.
          To make a complete application, you need also the Model and the Controller.

          Not all applications use MVC architecture, and markup languages can certainly be used outside of the MVC architecture, and can certainly be used for a lot more than views. Example: XML is a fairly well-known markup language. It can be used for things that are certainly view-oriented (XHTML, XSL-FO). It can also be used for things that are not exclusively view-orien

    • Re: (Score:3, Insightful)

      by merreborn (853723)

      Writing a few lines of a data markup language does not make you a programmer , you have not "developed" anything and hence what you have written is not an "application". At best its a description of functionality but it is NOT the implementation of it which is what the word "develop" in the programming sense means. FBJS may well be a programing language (albeit a noddy one) but FBML is not and I get a teensy bit tired of idiots people pretending they're some amazing app developer because they can grasp how

      • by Viol8 (599362)

        I wasnt talking about the server side you idiot, i was talking about the client side.

        • A facebook application can not be made with FBML alone.

          Facebook apps reside on the *developer's server*. Unless your "application" consists solely of what they refer to as a "canvas page", you must use more than FBML. If you want it to integrate with the user's profile, interact with their friends list or be visible on their wall, FBML is not enough.

          In addition to FBML and FBJS are the Facebook API and Facebook Query Language (FQL or "fecal" as l like to call it). To develop a Facebook application you ne

    • by NineNine (235196)

      Great. So, what's your point? You are awesome, and everybody else isn't? *yawn* Call it whatever you want.

    • by daschlag (1130989)

      Writing a few lines of a data markup language does not make you a programmer , you have not "developed" anything and hence what you have written is not an "application"... Lets get this straight - a friggin chimp could code in a markup language given 2 hours training.

      Doesn't ease of use make it superior rather than inferior? Your comment reminds me of how lots of programmers reacted to the .Net framework ---

      "This is script kiddy stuff that requires zero programming skill!"

      You're absolutely right. Now don't let the door hit you on your way out.

  • by Dyinobal (1427207) on Monday February 02, 2009 @01:51PM (#26697511)
    Social networking is right up there with the term "Web 2.0" on the list of things I despise.
    • by rthille (8526)

      I like anti-social networking, like in the SAW series of movies...

    • Re: (Score:3, Insightful)

      by Bearhouse (1034238)

      Indeed. I resisted facebook, until I realised:

      1. It was not a bad idea to keep track of what my kids were doing.
      2. Very many of my (well past teenage) friends kept asking me if I was on it.

      Having that that, it's mostly drivel, and linkedin.com is much better for professionals - actually has/does help me find work and keep in touch.

      • Re: (Score:3, Funny)

        by Abcd1234 (188840)

        Ah, but you see, there's an implicit assumption in your reasonable post that is likely not true for the OP: you have friends.

      • What I don't like about Linkedin is giving away my career history to the internet. I know you don't have ot but in a way that sort of defeats the point of it.
        • Don't worry. Table dancer is a legitimate career choice. Besides, you followed it up with that mob enforcer job, 3 years of pimping and then with a couple terms in the Senate, so it won't stand out.

  • Anonymous Coward (Score:1, Informative)

    by Anonymous Coward

    We need website specific programming languages now?
    What is this world coming to!?

    • Indeed. I commented on this too, but you some it up a lot better.

      It's like we've reverted back to compuserve and AOL, pre-web. *shudder*

  • I was reading the summary and became confused after the 1st 2 sentences:

    Facebook became the largest worldwide social site in the middle of last year.

    If their current pace holds they will pass MySpace as number one in the US some time next year.

    If they became the largest "worldwide" social site sometime last year, I assume that means they became the #1 social site last year.

    The following sentence states they'll pass MySpace some time next year... The only reasoning I can come up with is that MySpace isn'

  • I don't know whether it's me alone but I have actively resisted and will continue to resist putting myself on Facebook.

    Their user agreement is not something I would like to adhere to. I also look at it as a platform for teenagers yet I am well beyond those years.

    • by Abcd1234 (188840)

      I also look at it as a platform for teenagers yet I am well beyond those years.

      Dude... FB originally became popular with the University crowd. It's since moved well beyond that. Jebus, my *mom* is on Facebook (yes, for the record, I find this mildly disturbing).

      That's not to say you should sign up. It's definitely got it's problems, and it is fairly silly overall. But targeted at teenagers? Hardly.

    • I am also well beyond those years, but have recently joined Facebook. I wouldn't say it's a platform only for teens, but a platform that is as mature as your friends are. I like it for two reasons:

      First, I live far away from where I grew up, and I miss the short casual interactions that naturally come from close proximity. Email, blogs, and even phone calls don't lend themselves as well to things like short offhand comments about a book you're reading.

      Second, I was surprised at how quickly it connected me with people I haven't seen in a long time, like since high school. People I wish I hadn't lost track of.

      I know the slashdot crowd has a certain amount of counterculture pride, but sometimes people take it too far and miss out on something that is both popular and potentially worthwhile.

    • by Overzeetop (214511) on Monday February 02, 2009 @04:29PM (#26699953) Journal

      I read it, and it's not that bad. You're not required to put you whole life on there.

      Actually, it's pretty nice. If you're anything like the average semi-geek, you knew lots of people in school. You were probably friends with a bunch of them, but in all honesty after 20 years of being apart, you've probably got about 5 minutes of catching up to do. On facebook, you can, and avoid the 45 minutes of awkward prattle that would occur if said acquaintance were to show up in your town and you decided to meet over a beer.

      I check my page 2-3 times a week, and it keeps me abreast of friends (and just casual acquaintances) and what they're doing. It also helps in organizing meetings - my old frat brothers get together for golf every year or two, and it's the easiest way to keep coordinated. Use it, don't let it use you. Turn off all the email notifications (Except maybe private messages) and don't install any applications, they are the devil's spawn.

    • by Korbeau (913903)

      Well there are two ways to pick up girls ...

      Face the challenge of getting her phone-number and actually call her (if the phone number is real, that is!) ...

      Or face the challenge of casually telling her "hey, I'll add you on Facebook!" and REMEMBER her last & first names ...

      Unfortunately, I'm bad at both :/

      But fortunately, the girls have way better memory (or they tend to get less drunk?) so Facebook still sometimes works.

      Anyway, that is the sole reason I have a profile on Facebook (oh, and to re-trace m

  • Too bad... (Score:2, Funny)

    by eigenstates (1364441)

    FBML is not called Shark Sandwich. The review would be easier.

  • by Anonymous Coward

    along with Twitter, Myspace, blogging (as a personal, not project, broadcasting tool), etc.

    Anyone who is passionate about using/doing any of these tools is automatically a douche. Never met any exceptions. This is logical: no-one with sufficient humility to think their life is not worth broadcasting would care much for these tools. And anyone without that humility has sufficient ego that they, in fact, could not give two shits about you, and would shaft you the first time it was necessary to advance themsel

    • Re: (Score:3, Insightful)

      by hansamurai (907719)

      I mean, for fuck's sake, you want to communicate your life to your friends but you don't have the time to communicate personally with them?

      I hear that argument a lot, but do you have a family? Kids? Hobbies of your own? I barely have time for a real life social life, Facebook helps to keep me connected.

      • Re: (Score:3, Interesting)

        by kbielefe (606566)
        Not to mention if you happen to live thousands of miles away from several of your friends.
    • Re: (Score:3, Insightful)

      by Anonymous Coward

      I assume the irony of the fact you posted this passed you by?

      Posting your thoughts and opinions, as if others cared...

      Douche.

    • Re: (Score:2, Interesting)

      by DorkRawk (719109)
      Hi. I'm here as an ambassador from the general public. For some people technology is a tool, not a lifestyle. Some people like posting pictures of last nights party for their friends to see. Some people think Twitter has a legitimate use (it doesn't but it's still fun sometimes). Some people blog because they enjoy it and don't care if they have thousands of readers. It's all just a way of communicating and, in some cases, archiving part of your life. It's fun to look back at my old personal blog. I
    • by Sporkinum (655143)

      As if that wasn't enough, if you accept Facebook's privacy policy, you're the type to tolerate all sorts of shit which ultimately makes you to blame for the gradual erosion of individual liberties. Your desire to put convenience over a sensible policy of personal information dissemination makes you a useful idiot of every authoritarian state.

      Which the main reason I never used it our any of the other sites. I can't remember which one it is, but you have to register just to look at anything. Not worth the e

  • when the whole social networking thing crashes and burns because it can't really make money.

  • O'Reilly have been cutting jobs recently (Slashdot passim).

    Perhaps their decline is due to things like this - a subject they wouldn't have touched with somebody else's bargepole a few years ago.

  • I'll be the first to say that almost all facebook apps are pretty useless. Probably 95% are a twist on the ididotic "poke" concept.

    [full disclosure: start shameless self-promotion]

    That's why I built a decent facebook app. You can see it at http://apps.facebook.com/birthdayfund/ [facebook.com] (or http://www.thebirthdayfund.com/ [thebirthdayfund.com]).
    Basically it just facilitates creating a birthday fund for yourself or for someone else, so instead of getting a few "meh" gifts, you can get whatever you really want. Everybody wins. :-)

    Possibly

    • Re: (Score:3, Interesting)

      by ConceptJunkie (24823)

      That's why I built a decent facebook app.

      An app where everybody gives you money? No wonder you think it's decent. ;-)

      Seriously, most of the apps are really pointless, or can be. I don't mind a certain degree of that because it plays into casual contact, especially if you, like me, make it a point to include personalized messages when you send someone flowers, give them a hug or throw a snowball. I gave a hug to a coworker who was having a rough week and included a short note wishing her well. I give my

      • by Arpie (414285)

        > An app where everybody gives you money? No wonder you think it's decent. ;-)

        LOL. If only I was keeping the money to myself... but alas, I'm not.

        Thanks for the time and the insightful answer. I think we're on the same page. I'm really trying to make a legitimate, useful thing here, that will help people interact and feel good.

        The app allows you to say what you want for your birthday, add a comment, then whomever contributes also gets to vote on which gift they think is the best, and send you a message a

  • Ok. Time to start doing something else for a living. This Internet thing has officially jumped the shark.

  • *sigh* (Score:3, Insightful)

    by SCHecklerX (229973) <thecaptain@captaincodo.net> on Monday February 02, 2009 @05:14PM (#26700559) Homepage

    It used to be that people made their own web pages, and if they were so-inclined and had their own server, a nice document template, some dynamic stuff, whatever.

    Now it's this crap. What's sad is that this stuff really adds no particular value to people who had their own webpages.

    It's like we're back to AOL and Compuserve all of a sudden. WTF, over?

  • by Animats (122034) on Monday February 02, 2009 @10:33PM (#26704415) Homepage

    According to Alexa, Facebook passed Myspace last April. Myspace is in decline; they're now about 2x the reach of AOL, and dropping.

  • ... but I will happily contribute £20 towards any project that results in a Facebook app that will sync my friend's contact details to my Nokia phone. Or alternatively to Outlook - I can sync to my phone from that already.

    Aren't people sick of having to actually TELL their friends when they get a new phone number? Numbers should be superfluous, and with it's fairly rich security settings Facebook is well placed to become the DNS of the telephone system.

  • I found that this book offers nothing that isn't available for free at developers.facebook.com. Moreover, it is full of already obsolete information that can lead you on wild goose chases looking for features that have been altered or deprecated.

    Even Facebook's own documentation is shoddy. Dead-tree edition of information on a trendy, half-assed technology? Good luck with that.

    Thank god for safaribooksonline.

EARTH smog | bricks AIR -- mud -- FIRE soda water | tequila WATER

Working...