Skip navigation
Help

Computing

warning: Creating default object from empty value in /var/www/vhosts/sayforward.com/subdomains/recorder/httpdocs/modules/taxonomy/taxonomy.pages.inc on line 33.

This is a guest post written by Claude Johnson, a Lead Site Reliability Engineer at salesforce.com.

The following is an architectural overview of salesforce.com’s core platform and applications. Other systems such as Heroku's Dyno architecture or the subsystems of other products such as work.com and do.com are specifically not covered by this material, although database.com is. The idea is to share with the technology community some insight about how salesforce.com does what it does. Any mistakes or omissions are mine.

This is by no means comprehensive but if there is interest, the author would be happy to tackle other areas of how salesforce.com works. Salesforce.com is interested in being more open with the technology communities that we have not previously interacted with. Here’s to the start of “Opening the Kimono” about how we work.

Since 1999, salesforce.com has been singularly focused on building technologies for business that are delivered over the Internet, displacing traditional enterprise software. Our customers pay via monthly subscription to access our services anywhere, anytime through a web browser. We hope this exploration of the core salesforce.com architecture will be the first of many contributions to the community.

0
Your rating: None


An epic, two-year thread on the Home Model Engine Machinist boards documents Keith5700's astounding journey to scratch-build a working, 1/4 scale V8 engine. It's an insane read, as Mr 5700 discovers a lot of difficult things the hard way, while a community of teeny-thing machining enthusiasts cheer him on and offer advice, leading to triumph after triumph. The photos alone are worth clicking through all 35 screens (I've put some of the best after the jump).

1/4 scale V8, first project.

(via OhGizmo)

0
Your rating: None

"Most day-to-day programmers have only a general idea of how compilers transform human-readable code into the machine language that actually powers computers. In an attempt to streamline applications, many compilers actually remove code that it perceives to be undefined or unstable — and, as a research group at MIT has found, in doing so can make applications less secure. The good news is the researchers have developed a model and a static checker for identifying unstable code. Their checker is called STACK, and it currently works for checking C/C++ code. The idea is that it will warn programmers about unstable code in their applications, so they can fix it, rather than have the compiler simply leave it out. They also hope it will encourage compiler writers to rethink how they can optimize code in more secure ways. STACK was run against a number of systems written in C/C++ and it found 160 new bugs in the systems tested, including the Linux kernel (32 bugs found), Mozilla (3), Postgres (9) and Python (5). They also found that, of the 8,575 packages in the Debian Wheezy archive that contained C/C++ code, STACK detected at least one instance of unstable code in 3,471 of them, which, as the researchers write (PDF), 'suggests that unstable code is a widespread problem.'"

0
Your rating: None

Starting with templates, Android features can be added quickly with a single line of DSL code.

In the first installment of this two-part series on developing Android Apps with Scala and Scaloid, I explained how Scaloid simplifies and reduces the required Android code as much as possible while leveraging type safety. In this article, I explain how to utilize asynchronous task processing, the execution of methods from system services, and specific Scaloid classes and traits.

0
Your rating: None

Awesome paper on how particular synchronization mechanisms scale on multi-core architectures: Everything You Always Wanted to Know About Synchronization but Were Afraid to Ask.

The goal is to pick a locking approach that doesn't degrade as the number of cores increase. Like everything else in life, that doesn't appear to be generically possible:

None of the nine locking schemes we consider consistently outperforms any other one, on all target architectures or workloads. Strictly speaking, to seek optimality, a lock algorithm should thus be selected based on the hardware platform and the expected workload

Abstract:

This paper presents the most exhaustive study of synchronization to date. We span multiple layers, from hardware cache-coherence protocols up to high-level concurrent software. We do so on different types architectures, from single-socket – uniform and nonuniform – to multi-socket – directory and broadcastbased – many-cores. We draw a set of observations that, roughly speaking, imply that scalability of synchronization is mainly a property of the hardware.

Some Findings:

0
Your rating: None

A video of a new virtual reality prototype that uses both Oculus Rift and Razer Hydra technology shows how users can use their mind to move around artificial environments.

Users require an Emotiv EPOC, a device capable of mapping certain thought patterns to actions, to read their brainwaves in order to interact with the prototype through thought. Naturally, this is still in its experimental phase; While virtual reality technology is becoming affordable, the Emotiv EPOC's capabilities are "still quite primitive," and not wholly user friendly, writes developer Chris Zaharia.

"With my experience in the education industry through my startup Zookal and keen interest in neuroscience, I had a thought around how these technologies could be used together to enhance education and at the same time, see how far can we go with using cognitive control in a virtual simulation," he writes.

Zaharia hopes to explore the possibility of using virtual reality for educational purposes ranging from engineering to biology. The demo offers a look at what is currently possible using virtual reality headsets, motion tracking through Razer Hydra and cognitive control in virtual simulations.

Tap for more stories

0
Your rating: None