Using Phonegap as a Mobile App PlatformThis report will provide an overview of the challenges and opportunities brought by PhoneGap when building cross-platform mobile applications for touchscreen smartphones and tablets.
On the Importance of Yerba Mate in the Software Development ProcessThis paper will highlight the results of an extensive research conducted since the mid 90’s, on the effects of the consumption of beverages based in the plant known as Ilex paraguariensis, in the framework of software development process activities in South America and some small parts of Europe.
Dangers of PrototypingFrederick P. Brooks Jr. has written about prototypes, saying that they are not only useful but strictly fundamental pieces of the overall software process, as in many other engineering activities.
Saving a Failing ProjectIn 2006 I had the opportunity to work as a “project leader” into a small failing project.
Adding ManpowerPublished in 1975, “The Mythical Man-Month” is considered an all-time classic in the software engineering field.
CertificationWhile several other professions have a long, established and standard procedure of certification, the title “software engineer” is applied to both self-made developers, turned into experts of some technique, or to people with PhD degrees, and a long history of both academic and professional achievements.
Challenges for Software EngineersSoftware Engineering is the youngest of all the professions, being born around 50 years ago, but since then it has been continually improved.
A Watch - from an OOP PerspectiveA watch might be one of the most common types of objects, but it remains also one of the earliest pieces of human craftmanship to show an extreme level of complexity, all contained in a small amount of space.
Total Quality Management and SoftwareTotal Quality Management is one of the founding pillars of modern mass-production economy, of which the software industry is by far the youngest (and most rebel) child.
Factors of Software Project QualityI strongly consider that the following three items are of high relevance for software project quality:
About Operating Systems, Abstractions and APIsCharles Petzold, in its book “Code”, states the following: In theory, application programs are supposed to access the hardware of the computer only through the interfaces provided by the operating system.
How to Test Software Security?Howard and LeBlanc give a very complete answer to this question in their classic “Writing Secure Code” book:
Design by ContractEven if Design by Contract is a trademark (Eiffel Software, 2007) the idea behind it is the more general one of “defensive programming”.
About Mercury TestDirector for Quality CenterMercury TestDirector for Quality Center is an enterprise-class solution, recognized as one of the most complete and integrated software suites geared towards the management of testing- and quality-related activities.
The Explosion of the Columbia Space ShuttleThe explosion of the Columbia Space Shuttle uncovered several internal problems in the National Aeronautics and Space Administration (NASA).
Web Development is Software DevelopmentI have been developing web applications since 1996, and I still do a fairly large amount of web development nowadays.
POSIX Device FilesModern operating systems provide a clear separation of the kernel processes from those running in user space, which prompts the question of how to access I/O devices from user processes, without breaking the above mentioned architectural separation, which guarantees stability, security and performance.
ViacardDesde hace unos meses que vengo siguiendo un blog argentino llamado Viajé como el orto, por sugerencia de hernún.
Users as TestersBoth users and black-box testers approach software with apparently similar attitudes; however, they have fundamentally different goals.
Application FrameworksOne of the most pragmatically influential changes in software development, since the late eighties, was the introduction of several object-oriented frameworks, in different programming languages.
Schedule Issues in Software ProjectsTime is the ultimate dictator: “Time is also the one variable that has the least amount of flexibility.
About Corporate PoliticsPolitics are part of our daily life. Nevertheless, the word has got a bad reputation in the IT world (and elsewhere, too), thanks to famous failures and managed disasters, but the truth is that to succeed, projects need politics - and project managers should know it well.
Peer to Peer: An Overview“P2P” or “peer-to-peer networking” is maybe one of the most controversial and interesting trends in the dawn of the new century; its complete decentralization challenges all definitions of private intellectual property and creates new technological, commercial and juridic challenges.
AOP and the DataServices ProjectFive years ago I worked as a Software Engineer for a startup, based in Geneva, Switzerland, which had the goal of creating a web-based systems management console, to control and monitor the status of large computer installations, much like Microsoft SMS (Systems Management Server) does.
TCP FriendlinessTCP congestion control tries to bring solutions to the problem of packet loss, which happens in networks for several reasons:
Scrum Software Development ProcessIn this article I give an overview of the Scrum Software Development Process.
Intelligent Software Agents - a .NET ExampleSoftware Example In the February 2006 issue of MSDN Magazine (http://msdn.
A Case for Compilers: a Fake PaperThis morning I said to myself; I should write something for my blog… but had no subject to write about; so I found a faster way: I went to http://pdos.
About OOP and Other Programming ParadigmsDoes OOP reflect a “natural” way of thinking? Is it a better choice than the procedural programming paradigm?
Quick Comparison of C# and RubyI have been working as a software developer since 1996, and as such I’ve used a variety of different languages, both compiled and interpreted.
About Operating Systems and Networks“The true operating system is the net itself” This phrase, common marketing argument in the late nineties, made me remind that in the eighties, Sun Microsystems’ founder, Scott McNealy, used the slogan “The Network is the Computer” to describe his vision.
Hardware PolymorphismSince data and instructions are stored in RAM in pretty much the same way, a priori the CPU cannot distinguish each other, but by the cycle in which the binary chunk is fetched from memory.
What Will the Software Architecture Discipline Look Like in 10 Years' TimeThis is a tricky question; after all, Bill Gates himself published a book in 1995, “The Road Ahead”, where he only slightly talks about the World Wide Web:
Primer Parcial de Historia Económica y Social ArgentinaCátedra Rapaport – Adj. Galé Ciudad Universitaria Viernes 28 de Mayo de 1999