Facebook Testing New Navigation Menu

California – Facebook amid redesign navigation bar for iOS and Android app for easy use. Some Facebook users reported that the new navigation bar has appeared at the bottom of the screen.

But, it was not all users can get the new navigation bar that is still a beta version of it. With the addition of the menu at the bottom, the side navigation bar is now no longer in the beta version of the Facebook application.

Android users who already have a new navigation bar using Facebook beta version of Google Play Store. While the Apple iPhone users who see the new navigation bar that has installed the regular version of Facebook.

Android users who have installed the Facebook application is given a link to download the beta version of Facebook when they install updates. This all shows the changes coming from the server.

There is no warranty on the features of the new navigation bar. Current navigation bar is still considered to iOS or Android app.

Launch of Remodeled Website by limoserviceoakland.net

Limoserviceoakland.net, a premier ground transportation provider, has recently launched their remodeled website. Their remodeled website aims to improve the user experience and offer better insight of their business model. Their remodeled website has tons of new features and user-friendly navigation structure to benefit the customers.

“Any business has to keep up with the improving technology in order to stay in the business. The basic idea behind remodeling the website was to make our services and fleet information available to the customers with utmost ease. The customers will find complete specifications and technical details with the images of the fleet in the new website for determining the profitability of the vehicle. Additionally, we have included many features that can help the customers in comparing the vehicles and choosing the best one for the tours. Of course, the best search engine optimization was also the main aspect behind the remodeling of the website.” – said Ruben, a manager of limoserviceoakland.net

They have used dynamic approach to remodel the website to make it visually appealing and informative for the customers. The remodeled website offers the benefit of accessing the required information with only a few clicks. Their remodeled website includes complete information about the services like wine tour, casino trips, airport transfers, concerts, sports events, night on the town and corporate events. Their website has dedicated pages focusing on the luxury transportation options for the occasions like wedding, birthday parties, proms, bachelor parties and bachelorette parties. Their new website has state-wise recommendation about the most popular destinations, hotels and restaurants for the benefits of the customers.

They have showcased their wide ranges of limo collection that includes Escalade Limo, Lincoln Stretch Limo, Rolls Limo, Hummer Limo, Range Rover Limo and Chrysler 300 Stretch Limo in their fleet. Some other fleet information like features available in 20 passenger party bus, 28 passenger party bus and 45 passenger party bus are also listed on their website with the high-definition images. The information about their wide range of exotic cars such as Bentley Flying Spur, Mercedes-Benz S500, Ranger Rover SUV, Rolls Royce Phantom, Ferrari and Lamborghini Gallardo are now available on their new website.

They have also included the complete information about the different tour packages and their features in the website for better understanding. The customers can now subscribe to their newsletter to know about the release of new packages, deals, services and fleet. They have also included the online vehicle reservation facility on the new website to offer the convenience of booking the most appropriate vehicle with utmost ease. The customers can visit http://www.limoserviceoakland.net to check out the new features of the remodeled website or book a limousine for tours and travels.

It’s a Mad, Mad, Mad, Mad World: Scoping in CoffeeScript and JavaScript

CoffeeScript, as many people know, is a transpile-to-JavaScript language.1 For the most part, it does not introduce major changes in semantics. For example, this:

-> 'Hello, world'

Transpiles directly to:

function () { return 'Hello, world'; }

This is convenient syntactic sugar, and by removing what some folks call the “syntactic vinegar” of extraneous symbols, it encourages the use of constructs that would otherwise make the code noisy and obscure the important meaning. The vast majority of features introduced by CoffeeScript are of this nature: They introduce local changes that transpile directly to JavaScript.2

CoffeeScript also introduces features that don’t exist in JavaScript, such as destructuring assignment and comprehensions. In each case, the features compile directly to JavaScript without introducing changes elsewhere in the program. And since they don’t look like existing JavaScript features, little confusion is created.

equals doesn’t equal equals

One CoffeeScript feature does introduce confusion, and the more you know JavaScript the more confusion it introduces. This is the behaviour of the assignment operator, the lowly (and prevalent!) equals sign:

foo = 'bar'

Although it looks almost identical to assignment in JavaScript:

foo = 'bar';

It has different semantics. That’s confusing. Oh wait, it’s worse than that: Sometimes it has different semantics. Sometimes it doesn’t.

So what’s the deal with that?

Well, let’s review the wonderful world of JavaScript. We’ll pretend we’re in a browser application, and we write:

foo = 'bar';

What does this mean? Well, it depends: If this is in the top level of a file, and not inside of a function, then foo is a global variable. In JavaScript, global means global across all files, so you are now writing code that is coupled with every other file in your application or any vendored code you are loading.

But what if it’s inside a function?

function fiddleSticks (bar) {
  foo = bar;
  // ...
}

For another example, many people enclose file code in an Immediately Invoked Function Expression (“IIFE”) like this:

;(function () {
  foo = 'bar'
  // more code...
})();

What do foo = 'bar'; or foo = bar; mean in these cases? Well, it depends as we say. It depends on whether foo is declared somewhere else in the same scope. For example:

function fiddleSticks (bar) {
  var foo;
  foo = bar;
  // ...
}

Or:

function fiddleSticks (bar) {
  foo = bar;
  // ...
  var foo = batzIndaBelfrie;
  // ...
} 

Or even:

function fiddleSticks (bar) {
  foo = bar;
  // ...
  function foo () {
    // ...
  }
  // ...
}

Because of something called hoisting,3 these all mean the same this: foo is local to function fiddleSticks, and therefore it is NOT global and ISN’T magically coupled to every other file loaded whether written by yourself or someone else.

nested scope

JavaScript permits scope nesting. If you write this:

function foo () {
  var bar = 1;
  var bar = 2;
  return bar;
}

Then bar will be 2. Declaring bar twice makes no difference, since both declarations are in the same scope. However, if you nest functions, you can nest scopes:

function foo () {
  var bar = 1;
  function foofoo () {
    var bar = 2;
  }
  return bar;
}

Now function foo will return 1 because the second declaration of bar is inside a nested function, and therefore inside a nested scope, and therefore it’s a completely different variable that happens to share the same name. This is called shadowing: The variablebar inside foofoo shadows the variable bar inside foo.

javascript failure modes

Now over time people have discovered that global variables are generally a

Attend Meeting C++ 2013

Boost Dependency Analyzer

I have something special to announce today. A tool I’ve build over the last 2 weeks, which allows to analyze the dependencies in boost. With boost 1.53 this spring, I had the idea to build this, but not the time, as I was busy writing a series over the Papers for Bristol. Back then I realized, how easy it could be to build such a tool, as the dependencies could be read & listed by boosts bcp tool. I already had a prototype for the graphpart from 2010. But lets have a look at the tool:

The tool is very easy to handle, it is based on the out of bcp, which is a tool coming with boost. Actually bcp can help you with ripping libraries out of boost, so that you don’t have to add all of boost to your repository when you would like to use smartpointers. But bcp also has a listing mode, where it only shows the dependencies thats whats my tool build up upon. Lets have a short look at the results, the dependencies of boost 1.54:

A few words on how to read this graph. The libraries in the middle of the “starshape” are the ones with the most dependencies, each line between the nodes is a dependency. A dependency can be one or multiple files. The graphlayout is not weighted.

How to

A short introduction on what you need to get this tool to run. First boost, as this tool is build to analyze boost. I’ve tested with some versions (1.49 – 1.54) of boost. You also need a version of bcp, which is quite easy to build (b2 tools/bcp). Then you simply need to start the tool, if BOOST_ROOT is set, the tool will try to read it, other wise you will be asked to choose the location of boost when clicking on Read dependencies. Next thing is selecting the location of bcp. That is the setup, and the tool will now run for some time. On my machine its 90 seconds to 2 minutes the analysis takes, it might be lot longer on yours, depending on how much cores you got. The tool will spawn for each boost library (~112) a bcp process, and analyze this output in a thread pool. After this is done, the data is loaded into the tool, and then saved to a SQLITE database, which will be used if you start the tool a second time and select this version of boost. Loading from the database is far faster.

A screenshot to illustrate this:

tl_files/blog/bda/bda.png

To the left are all the boost libraries, the number of dependencies is shown in the braces. To the right is a Tabwidget showing all the dependencies, the graph is layouted with boost graph. When you click on show all you’ll get the full view of all dependencies in boost. The layouting is done in the background, so this will take some time to calculate, and is animated when its done. The results of the layouting are good, but not perfect, so that you might have to move some nodes. Exporting supports images, which are transparent PNGs, not all services/tools are happy with that (f.e. facebook, twitter nor G+ could handle the perfectly