Categories
- Andy and Javi: Actionscript and AIR Quick Tips
- Arc90
- Architecture
- Avi and Patrick: Java Quick Tips
- Avi: REST Quick Tips
- Ben and Matt: PHP Quick Tips
- Business
- Chris and Corey: JQuery Quick Tips
- Chris and Matt: Unix Quick Tips
- Design
- Development
- Foresight
- Javi and Joel: JQuery Quick Tips
- Javi: CF Quick Tips
- Jobs
- Joel: .Net Quick Tips
- Lab
- Music
- Patrick and Joel: XML Quick Tips
- Reviews
- Tech
- The Internets
- Thoughts
- Trends
- Web
- What We Are Reading
Archives
Category Archives:
Architecture
Migrating from TFS to SVN
Our 180-day evaluation copy of Microsoft Team Foundation Server expired today. We had decided for a variety of reasons not to purchase it (let the blog comments begin!), and to migrate our .NET source code from TFS to Subversion, which we use for all other projects. Naturally we needed the final copy of the source, and any history we could migrate over easily would be gravy, but we decided that for our needs (and not necessarily yours!), it wasn't worth investing much time or money in preserving all historical details (let the blog comments continue!).
While I found lots of tools and blog posts about migrating from SVN to TFS, I couldn't find anything about going from TFS to SVN without writing lots of code or buying expensive software we'd use exactly once. With a little tinkering I came up with the following method to export source code snapshots by date from Team Foundation Server so that we could commit changes sequentially by week into Subversion.
Continue reading "Migrating from TFS to SVN" »
Permalink | Comments (1) | Technorati Tags :
Posted on December 17, 2007 by Joel PotischmanWhose Value Is It Anyway?
I recently completed a software development project for a client. I came up with what I thought was a great design to meet their very unique needs, and I worked with a really smart team who thought deeply about every design decision and produced world-class technology. The only negative apparent to me at the time was that my original time estimate ended up looking like the sales tax on the actual effort.
Big deal. Another late IT project, right?
As I combed through the charred wreckage of my project plan for its black box. I thought about the projects I've worked on where my estimates were dead-on, and I thought about the ones where I didn't see my kids for days at a time. This project gave me a brutal reminder that a software development project's ability to be estimated accurately is inversely proportional to the amount of new technology involved.
Continue reading "Whose Value Is It Anyway?" »
Permalink | Comments (0) | Technorati Tags :
Posted on October 16, 2007 by Avi FlaxOn Programmers, Programming Languages, and Frameworks
Derek Sivers writes 7 reasons I switched back to PHP after 2 years on Rails, an admirably plain-spoken article, chock-full of gems about programmers, programming languages, and frameworks. He puts a lot of things into perspective.
Many of the hordes of commenters missed Derek's point by a large margin. It's edifying to search the web page for "Derek" and read his responses in the comments.
Permalink | Comments (0) | Technorati Tags :
Posted on August 6, 2007 by Joel NagySometimes you are truly better off starting from scratch
Reuse, Reuse, Reuse is a typical mantra these days, leaving me to wonder if any new ideas are ever written. Now of course I'm being a little sarcastic here, but it seems that the call to reuse code and use as much free code as you can get your hands on is the norm these days. I believe that there are very valid reasons to not only start from scratch but building certain code bases in-house.
The reasons why we often opt for prefab code (or previous incarnations) instead of coding from scratch are varied: our urge to rush to market, hesitation to throw away code, etc. Sometimes we feel that it would be a waste to not reuse old code, or even "why waste our time writing code that someone else already wrote?" Some good reasons why you should write from scratch:
- Maintenance: Plugging 20 odd libraries from 20 separate sources into a single project can become a maintenance nightmare as they might try to step on each other and may not have been written with the most optimized or clean code.
- Adding Features: Adding features to some prefab code bases can make the code unmanageable as hacks get frequently introduced to solve a simple issue.
- Scalability: Do you know for a fact that the old code or the plugged in library will scale? Do you have the time to perform a thorough code walk through of the new code? If you do you might actually have time to write new code.
- Use the Right Tool (screwdrivers don't make good hammers): Using old code (especially from legacy platforms written with older languages, such as non-web languages used in a web platform) will result in trying to leap hurdles that newer languages were designed to perform.
- Learning: There's nothing wrong with trying to figure out how to accomplish a task on your own, in the end you'll be rewarded with the new knowledge and firm understanding of how the code you are using actually works.
Don't take these reasons as "you should always" write from scratch, but sometimes it's just better than using <insert code here> into your next project.
Permalink | Comments (3) | Technorati Tags :
Posted on June 13, 2007 by Avi FlaxRESTful Revert
One of our goals for this blog is to give a glimpse into how we work, and how we think. In that spirit, here's a recent discussion that took place in a Trac ticket. The task was to add, to a RESTful web service, a way to revert a resource to a previous version.
Continue reading "RESTful Revert" »
Permalink | Comments (0) | Technorati Tags : rest web services web services
Posted on November 22, 2006 by Avi FlaxFinally, a REST Book!
I was very excited to stumble across a link to the book REST Web Services, by Leonard Richardson and Sam Ruby, which is slated to be released in May 2007. It can't come soon enough for me.
I've been building REST web services for about a year now, and I was interested in the style well beforehand. Over the past year, I've become increasingly enamoured of the style, and I've enthusiastically embraced it as the way to build web services and APIs. I've gone so far as to become Arc's Architect for Services, with the mandate to ensure that all our web APIs follow RESTful principles and design patterns.
The single biggest problem with REST has been a lack of clearly established best practices that an initiate could follow to get up to speed with the style quickly. Until now, someone wanting to create a REST service had to start with the dissertation, then a Q & A, a marital dialogue, and a FAQ - before they were ready to peruse hundreds of messages at rest-discuss. It's an exhausting series of hurdles to jump over; it's no wonder that adoption of REST has been slow and uneven.
But lately things have started getting much better, rapidly. There's now a publicly available example of a best-practices REST API, Blinksale's. And REST is getting all sorts of high-profile attention. (Interestingly, much of the recent writing has been in the form of dialogue, which isn't as common as it should be in net-tech circles. Ryan Tomayko should get a lot of credit for kicking that off.)
I have high hopes that this book will firmly establish REST as a practical, effective architectural style, one that's as mature in its application as in its theory. I'm really looking forward to seeing it!
Now, since we're finally getting practice cemented down on top of the ideas, it's time for some better tool support! More on that later.
Permalink | Comments (0) | Technorati Tags :
Posted on September 11, 2006 by Richard ZiadeLet'em Play
As people are starting to think about how the 2.0 world can be applied to the Enterprise (call it "Office 2.0" or "Enterprise 2.0"), there's a really important and not-so-obvious lesson to be learned from all the mashing going on in the Web 2.0 world.
All these cool creative composite applications like Housingmaps.com are not a byproduct of a sudden surge in creative thinking and uses. There's a critical pre-requisite that's been put in place: systems are opening up.
Paul Rademacher was selected as one of Technology Review's 35 young innovators. On his own, he merged together Craig's LIst & Housing Maps to create housingmaps.com. It's a great example of the "happy accidents" that can result from systems opening up and simplifying how people can tap into the power of a service. From the Tech Review profile:
For Rademacher, there's a moral to the story. Innovation is possible only when companies let you tinker with their creations. Too many good ideas are squandered, he says, because the tools needed to realize them are locked away.
At Arc90, we're building some complex systems and one thing we'll openly admit is that we can't foresee every every possible way a service can be leveraged in the future. So we hedge our bets by delivering these servics in a easy-to-understand, simple way. We're already seeing the fruits of this approach. When the time comes to start tying systems together (and it inevitably does) the heavy lifting typically associated with integration isn't so heavy. In fact, in many cases it's downright easy.
So within your organization, open up first and build your applications upon that open framework of services. It may be slightly more painful now, but you'll undoubtedly reap the rewards later.
Permalink | Comments (0) | Technorati Tags : enterprise2.0 web2.0 api mashup
Posted on August 1, 2006 by Chris LoSaccoHelp Wanted
Forward thinking software company seeks like-minded employees for possible long term relationship -- eh, it doesn't work so well as a personal ad, but the sentiment is true. Since we're always looking to hire talented people who think like we do, we've added a brand spanking new jobs page to arc90.com.
If you think you'd be a good fit, or just want to learn more about us and what we do, send a note and a resume to contact@arc90.com. We promise not to bite.
Permalink | Comments (0) | Technorati Tags : arc90 careers
Posted on July 20, 2006 by Richard ZiadeCalling All (Really) Talented Developers!
Read it with your best British accent:- Are you tired of your current job where you hide in a cubicle and think about lunch at 10:30AM?
- Are you looking for a cool, fun, dynamic environment where creativity and strong technology skills are rewarded?
- Do you live (or are you willing to work) in the New York City area?
- Are you into web application building / AJAX / Flash / Actionscript / PHP / Coldfusion?
- Is this starting to sound like an infomercial? (Hence the need for the British accent)
Permalink | Comments (0) | Technorati Tags : careers arc90
Posted on July 10, 2006 byJavascript : The Second Coming
It seems like there's always been an anti-JavaScript feeling amongst people, and now with all the hype around Flex (and it's JavaScript wanna-be sibling ActionScript), it seems like the rift is getting bigger. As an interpreted language, it was always frowned upon. The fact that it wasn't compiled into tiny ones and zeros made it a second class language. Some even went as far a saying it wasn't a programming language, but solely a programming script.
Continue reading "Javascript : The Second Coming" »
Permalink | Comments (6) | Technorati Tags :
Posted on July 6, 2006 by Richard Ziade10 Reasons We Love Flex 2
As the Adobe and Flash communities probably already know, Adobe's Flex platform was released recently. For the unfamiliar, Flex is a development environment that allows developers to build web applications replete with business rules, layout capabilities and other goodies that compile to Flash. The result can be a really compelling, rich end-user experience. We all know that AJAX gets all the buzz these days. We do plenty of AJAX work here at Arc90. But we’re also loving Flex 2. Here are 10 reasons why.
Continue reading "10 Reasons We Love Flex 2" »
Permalink | Comments (24) | Technorati Tags : adobe flex ria design ajax
