Who We Need: Engineers, Entrepreneurs, Expert Generalists
We are always hiring talented generalist programmers. But if you really like titles, we're looking for:
- Salespeople (of the future!!) - Fresh graduates (graduating soon) - College dropouts (graduating never) - Senior programmers (there's no such thing as overqualified) - Mobile developers (iOS, Android, BlackBerry, Windows Phone... even webOS) - Systems programmers (back end performance and stability) - Web developers (bring on the PHP!) - Front-end engineers (jQuery, HTML, CSS, all that) - Web designer (PSD, HTML, CSS)
We're not looking to stick cogs in a big machine. We need people who can do pretty much everything and immediately learn how to do the rest. Before even thinking about the skills, we're looking for you to be:
An incredibly hard worker, even when it's not so fun. There is a ton of work to do, and a lot of it downright sucks. After all - we do the sucky work so our customers won't need to. We need you to buck up and grind through random tasks, server logs, user emails, source code, and bug reports, without complaint or supervision, and come back asking for more.
A cool person to be with. Not a crazy party animal, just someone we can trust, rely upon, hang out with, bounce ideas off of, and generally interact with in a positive way, both personally and professionally. In fact, this is one of the most stringent requirements we have: would you be fun to hang out with day and night on some remote, exotic beach? This isn't a rhetorical question, either: every year we take the company overseas for a month (on your own dime, sorry) and work incredibly hard while having a ton of fun. We've done Thailand, Mexico, India, Turkey, and the Philippines. Where do you want to go next?
Super talented, in a general way. We're going to throw a ton of work at you of every possible sort, and you need that magic skill of being able to figure it out even if you have no idea where to start. Everyone helps with tech support, schmoozing at swank parties, hosting events, coming up with new and ever-more-ridiculous marketing stunts, etc. And if you code, you'll code everything: you might do mobile one day, front-end design, back-end optimization, low-level debugging, the works. This is not a monkey job - you're going to be a full participant in the process, and you need to bring your own unique blend of skills to the table.
Even more talented in a programming way. You can instantly visualize solutions to problems big and small. Your code is always clean, well commented, has good nomenclature and indentation. You can switch on a dime between C++, PHP, Bash, Cron, HTML, CSS, JavaScript, jQuery, Dwoo, SQL — not because you know them all, but because you're the sort of person who can just pick it up and figure it out. If you're this sort of person, you'll know what we mean. If not, then this position isn't for you. Basically, we're looking for people who want to do amazing things with their careers, and who are searching for a way to get started or take the next incredible step. Does this sound like you? If so, read on...
True, I don't spend much time in Chicago. I've spent a fair amount of time in India, Egypt, South Africa, South America, Cambodia, Malaysia, and lots and lots of other places, but I agree that most places overseas aren't as dangerous as US inner cities. It sounds like you have first hand with Nigeria and can attest to it being bad?
You're wrong. Things get stolen only when you leave them out of site/mind for too long. If it's on you at all times, nobody messes with you, and mugging is extremely rare. The world is not as unsafe or difficult as you might think.
I've travelled around the world and back again (http://360togo.com, http://swooshcompound.com/ and the Sony TR3AP is the best option. Make sure you have:
1) Small physical dimensions. Something like a 10" screen. (I really miss my C1MV). It's big enough to get real work done, but no so big that you stand out like a sore thumb. This seems silly, but if you're going the places you say you're going, you'll feel very self conscious about flashing something worth more than their annual salary around. 2) Awesome battery life. I carry two extra-size TR3AP batteries at all time, so I have 10-12 hours of battery life. I hear the new TZ series is even better. 3) Ethernet port. Wifi is rare, and more often than not you'll end up going to an internet cafe, unplugging one of their computers, and plugging the wire into yours. Bring your own ethernet cable. 4) Connectors for your camera. I have a Sony camera so the memory stick reader is built right in. Otherwise USB works in a bind.
The TR3AP has all these. They're available on eBay for $600-800. Extra batteries are like $100. It has a built-in webcam for Skype. It's a fantastic computer for anything you need to do, up to and including software development. (Not games, sorry.) I bought mine new years and years ago, and it only now just broke. I just bought a new one off of eBay; the only complaint I have is Ubuntu 7.10 doesn't support hibernate/suspend out of the box on it. But between breaking my old one and buying this new (used) one I was using a MacBook, and I can't wait to get back to the smaller form factor.
Don't worry about ruggadized components; laptops are really sturdy. Just keep it on you at *all times*. like, literally. In showers. In clubs. In the bathroom. At all times. If your laptop is too big you will get lax, and then it'll get stolen.
Also don't worry about a modem port. You'll never use it. International phone jacks are even less standardized than electricity.
Don't worry about voltage converters. Don't get the stupid "world traveller plug adapter kit". Just pick up a plug adapter at 7-11 when you land in a new country and you'll be fine. Pretty much any laptop's AC adapter supports all relevant voltages.
Don't get a laptop case. It's just bulk you don't need.
Math is so overrated with respect to programming. It's idiotic to have (for example) four years of calculus, unless you happen to be writing Mathematica. Programming is more like management than mathematics. I think this guy is right on the money.
Take your laptop if you intend to use it on a frequent basis. But if it's just for offloading photos, it'll probably be better to just store them on your IPod, or even better, burn DVDs at internet cafes and mail them to yourself. Just make sure that whatever you bring you keep on yourself *always*. Take everything to the shower, to the bathroom, out clubbing, etc. Sleep with you backpack. Sounds absurd, but stuff does get stolen, everywhere. In fact, the only time I had anything stolen was a writing notebook taken literally out of my backpack at a club.
(http://360togo.com documents my trip around the world for a year with my laptop, which never got stolen.)
Also, take the smallest possible backpack. If you're taking more than a messenger bag, you're taking too much. I recommend the "Healthy Backpack" -- about the size of a large tennis racquet's cover. You truly don't need more than that.
P2P CDN Distribution (eg, Red Swoosh)
on
Free Podcasting Hosts?
·
· Score: 2, Interesting
To offload the bandwidth you might consider using a P2P CDN like Red Swoosh (www.redswoosh.net). The nice thing about P2P is the more people you deliver to, the more efficient it becomes in pulling from peer, and the faster the downloads go.
Totally agree, but don't forget about products that already work, such as Red Swoosh (http://www.redswoosh.net/). Centralized video streaming is so '98; the costs are astronomical and the quality sucks. I mean, we can't get DVD quality to stream well; HD is not even worth discussing.
Red Swoosh also integrates seamlessly with web environments (unlike, say, Bittorrent which spawns a separate application), and offers a JavaScript API for creating iTune's like download managers -- all within a simple webpage.
I guess I largely disagree with your second assumption. My recommendation is to spend less energy teaching kids "what they should know", and spend more energy helping kids decide what is important to them. I find people who have clear goals naturally figure out ways to learn the necessary skills; likewise, people without goals accomplish nothing despite any amount of training.
My ideal school would consist of a graduated series of "earning the right to choose your own path": start out with standard formal classes that teach basic math, communications, computers, etc. But by succeeding in these classes you earn more flexibility and self direction. The constant thrust of the program would be to encourage and reward proactive control over your own education, while formal structured education is provided as a saftey net for those who cannot.
The role of the teacher in the self-directed classes is less about "teaching" and more as a mentor -- serving as a resource to help kids figure out what to do, and how to do it. "Failure" is redefined to mean "not trying trying to succeed" (though some more objective metrics will be required to some degree).
Basically, I would like our schools to create self-directed, self-teaching students.
I agree with this post, and I will add that being sued for patent infringement is a problem that you should be happy to have (in the same sense that your servers crashing from unexepctedly high demand is a happy problem).
If you're being sued, hopefully this means you've actually created a product that was successful enough to get noticed. That's the hard part. Defending yourself from a patent suit, while expensive and shitty, isn't nearly as hard as creating a product that matters in the first place.
Wow, I'm amazed by the negative reaction you inspired with your post. I'm sure there's some lesson in there, but I'm not sure it applies outside of the Slashdot forums. By and large, I've found people to be really nice in the "real world".
That said, my bit of advice is "don't overestimate the value of being right". Even if you see the solution before anyone else, and can convince anyone that lets you, and are ultimately vindicated -- it doesn't matter unless you can get your solution implemented.
I agree with the flavor of the other posts -- intellect and skill are important, but communication, persuasiveness, and leadership skills are even moreso.
I'm continually amazed by how uncreative people are in defining self interest. "Self interest" need not be "money in the bank". It's a huge vector of very complex, and sometimes arbitrary goals.
For example, it's in my interests to choose vanilla, even though it might be in your interests to choose chocolate. Is it altruistic for me to give you five liters of chocolate for one liter of vanilla? No, it's pure profit -- I'm giving something away that I don't want to get something that I do.
In the ultimatum game, if people truly valued nothing but money, I agree it would be a nail in the coffin for self-interest if people didn't take all the money. However, the game is played with real people that have more in mind, and thus doesn't really say anything conclusive on the issue (other than "people seem to value more than just money").
Given any number of huge social conditioning reasons, I like to be "fair", because it avoids the feeling of "guilt" -- a feeling that "costs" me more than the money I receive. Indeed, the less "fair" I am, the more it costs me. Thus, the way to maximize my self interest is to split 50/50, because then I get money without any guilt.
Once you get slightly creative about defining self interest, the refutation of your argument is obvious. The only real definition of an individual's "profit" is "that which someone pursues". And thus by definition, people cannot help but pursue profit. It might be somewhat tautological, but it's no less true for it. Indeed, if you bristle at the obviousness of this statement, ask yourself "Why am I so hesitant to accept it?"
I think it's useful to really ask: "Why do I want this PhD?" Be honest about this question. If the answer is "because I can't get a job", "because I don't know what I want to do", or "because I don't know how to learn on my own", you really have greater problems to worry about.
One acceptable answer is that "because the software I want to write requires specialized hardware that I cannot buy on my own" (such as VR, grid computing, nanotech, or whatnot).
Another acceptable answer is "because I know a specific job/position that requires this little piece of paper, even though I know it's a valueless waste of time."
It's even fine to say "because for some strange reason it brings prestige, and I want that".
In any of these, the PhD is a means to a specific end. But if you don't know how a PhD will specifically help your career, or how it gets you toward a specific goal, I cannot see why you would want to do it.
It consumes time and money, and has no guarantee of bringing anything on the other side. All it demonstrates is that you were willing to spend time and money to get a piece of paper, and if somone is impressed something as inane as that, should you really care what they think?
On top of that, I truly do believe a PhD is a liability in the engineering world (though perhaps requisite for CTO, though why this is the case is beyond me). I've had the unfortunate experience of working with several PhDs, and the results have been consistently grim. This is merely my contribution to the mass of ancedotal information against hiring PhDs for doing "real work".
Maybe you will beat the odds and actually pull some real-world value out of the PhD. But chances are, if you don't know clearly why you will be better off than all the other inept PhDs out there, you won't.
The theory behind free markets is that the most efficient producer wins. Over time, the system as a whole wins, because it's optimally efficient. What I'm curious is: in a free market, would the US win more or less than others? Does the US have any defensible competitive advantage for producing software, or indeed anything?
On one hand, some might argue that our safety and envionmental laws limit our competitiveness, and that less regulated countries will thus dominate the markets. But on the other hand, it could be argued that our very dominance comes as a result of these very same regulations.
The same could be said about economic disparity: while it's not great in the US, its orders of magnitude worse in China and India. Thus the problems we face in the US will only be magnified in the others. Ultimately this might affect their stability and security, which may hinder international investment.
Finally, the US has evolved its societal infrastructure over the course of literally hundreds of years without substantial interruption -- security, clean water, reliable power, and (some) political representation have been the norm in the US for generations. The destabilizing events of the modern world affect everyone, but affect the US less than most.
So in the end, I suspect that the US will ultimately benefit more from free trade than by protectionist measures, but not because we're better coders or inventors. Rather, I think the product of the nation's entire history gives us a competitive advantage that isn't going away soon.
First, as someone who works a lot in both the USA and Canada, I can guarantee you that living costs in Canada are, on average, HIGHER than the USA.
Hm... I'm considering moving to Canada (Vancouver) and am very curious on this topic. In particular, I'm trying to figure out how to compare salaries in the US to those in Canada, adjusted by my lifestyle.
For example, housing appears to be much cheaper in Vancouver than SF (even when both are priced in US dollars), but because I'm only renting the smallest, cheapest place I can find, the overall savings for my lifestyle are very slim. At the same time, those areas where I do spend freely (nightlife, restaurants, imported equipment, international travel) are definitely more expensive in Vancouver than in SF. On top of that are the higher taxes, as well as intangibles like slower health care (it may be more expensive in the US, but it's faster and not taken out of your salary in the form of taxes), and so on.
Thus, I'm struggling to figure out what salary in Vancouver/Canadian dollars would be equivalent to a $85k US salary in San Franciso. Right now I'm thinking a good number is around $130k CA, but I really don't know. Any insight? Thanks!
Though I'm sure I'm not the first to state it, a slowing Earth would increase gravity over time (due to a reduction in the fictional "centrifugal force"), and thus may explain why such huge animals like dinosaurs were at one point abundant, but now extinct. This slowing may just be a natural result of friction from the atmosphere, moon, and fluidic core (ie, compare the spin of a boiled versus raw egg).
I have had one for the past six months and absolutely love it. The portability is just incredible, to the point it's been about my only luggage on my trip around the world. With the quad-battery upgrade you can pretty reliably get 8-10 hours on a full charge (nowhere near the 15 advertised, of course). And, though the transmeta is a bit sluggish, it's entirely adequate any non-gaming task (I do contract technical writing as I travel and it's paid for itself a couple times over). Furthermore, though not DoomIII-compliant, the ATI Radeon mobile is suprisingly quick and has been sufficient for me to continue 3d graphics programming while traveling. The camera is a pointless, granted (low res, takes ages to initialize, only digital zoom, manual focus), but the laptop itself is a godsend.
I think the biggest benefit of this laptop is that it's finally found a combination of speed, portability, and battery life such that you no longer have to ask yourself "should I bring my laptop today?" Instead, you just always have it in your bag, charged up the night before, to whip out at cafes or plane rides.
One way to analyze this problem is to note the interdependencies of privacy, money, accountabiliy, etc. I've outlined this analysis at, called the Privacy Feedback Loop:
The balance between privacy, corporate, and government interests has always been precarious. This precarious balance has created an environment of fear - much of which is very justified, and some of which is not. The only antidote to this fear, both justified and unjustified, is a decentralized system that seeks to maximize information exposure, accuracy, and privacy protection at a self-regulating, technical level. Ubiquity must implement such a system. While Ubiquity can by no means strike the perfect balance by itself, it can provide the actors involved with the tools to do so in a secure, sustainable fashion.
Actors
There are three primary participants in the privacy feedback loop: users, services, and realms.
>
Users (Consumers): Obviously, this system focuses on the safe collection and use of consumer personal data. Thus, a major player in the system is the user herself.
>
Services (Businesses, Government): The entities actually collecting and using the user data provide services to those users being served. These entities are typically businesses offering information and products to users online or in person. However, this system would be entirely appropriate for managing new police surveillance technologies in a safe manner.
>
Realms (Trade Groups, Regulators): The final component, providing critical oversight in a decentralized fashion, are the realms. Reach realm defines and enforces standards and privacy/usage policies through a system of active certification. Active certification is what gives realms the technological "teeth" to effectively enforce policy.
Feedback Loop
Figure 1: Privacy Feedback Loop
The privacy feedback loop is illustrated in Figure 1, and consists of the following interdependent components:
>
User Privacy: Users' concepts of privacy are just measures of confidence that data is being used correctly. "Correct" use is in the eye of the beholder, but in general is guaranteed through (1) allowing the user to view and edit all personal data collected, (2) putting the user in control of who can and cannot access the data, and (3) providing extensive auditing information to demonstrate correct use. These confidence-building measures are the result of increasing accountability of the industry as a whole, and allow for greater amounts of higher quality personal data to be collected.
>
Personal Data: As user privacy increases, the amount and value of the data collected increases. Through the user's ability to review and correct all data collected, as well as automatic corrections when existing accounts become linked together, the data itself is of a higher quality and therefore more valuable. Likewise, as users become confident that the data is correctly used, the more open they are to supplying deeper levels of personal data. As the amount and value of personal data collected increases, the revenues of the services using this data do as well.
>
Service Revenue: Services use personal data in a variety of ways to reduce cost and generate revenue. Personalization features create "stickier" services, as well as drive additional product sales. Convenience features streamline the use of services, thereby reducing the time-to-purchase and "mental cost" of using the service. Immediate access to timely usage data allows fast marketing feedback to ensure, among many things, correct product positioning. All of these features rely upon and benefit from large amounts of accurate, detailed personal data. The value of these features and their effect upon the services' bottom lines cause other services to join in the system in a viral manner, increasing the membership in the system as a whole.
>
Membership: As increasing numbers of services take advantage of this ocean of personal information, the total membership of the system increases. Every new member service brings new users to the system, magnifying all of the system's elements. One major beneficiary of this magnification is the realm, which increases in realm authority.
>
Realm Authority: Realms serve as the representatives for each industry. Members look to realms to set the agenda for new standards features, and equitably resolve member conflicts. Users look to realms to define and enforce acceptable usage policies, as well as create a strong brand that users can look for and trust as they use the member services. Courts look to realms to uphold contractual obligations toward both members and users and regulate their industries in a fair manner. Realms are leaders, whose strength and power are directly determined by the number and devotion of their followers. These powers are used to force an acceptable level of accountability upon each realm's respective industry.
>
Accountability: The final link in this chain is accountability. Services that choose a particular realm's data and standards are contractually obligated and technically required to adhere to the usage policies set by that realm. These policies generally define the acceptable level of usage, such as maintaining independent copies of data, selling data outside of the realm, linking data in certain ways, and so forth. Additionally, these policies require that the realm record usage of the data in such a fashion that the user can learn how the data is used, meet certain exposure requirements on the data collected from users, etc. Through increasing levels of accountability, users can gain a greater sense of privacy, thereby completing the cycle.
More thoughts on implementation details here: http://www.quinthar.com/UbiquityProject/Res earch/T alisman/index.html
Though everything has already been said, I'll add my piece.
(1) All engineering fields are innovative, even brige building (2) Innovation means change, change means uncertainty, and uncertainty means bugs (3) Thus all engineering fields suffer from bugs (Tacoma Narrows, for example) (4) All engineering fields have ways to minimize the effects of bugs when they arise, even if their precise nature isn't known (building to handle cases worse than expected, such as building to withstand up to richtor 9 earthquake when only up to a 6 is expected) (5) Likewise, all fields have way to test designs for bugs before construction, or analyze implementation after construction (physics simulatations or models before, careful expections after) (6) Therefore, all engineering fields have the option of minimizing the occurance and severity of bugs. (7) Yet minimal bugs are only one factor in a project: time, cost, and asthetics are other factors. (8) No factor can be perfectly achieved (there is no such thing as having something now that does not exist now, or for no cost, or at perfect asthetic elegance, or with no risk of failure). (9) Thus, each project inovlves a balance between competing ideals. (10) The people performing this balance are, by and large, rational actors that seek to maximize their gain and minimize loss. (11) Thus, they seek to maximize profit, fame, customer happiness, competitive advantage, while minimizing legal liability, infamy, or customer disatisfaction, or market weakness. (12) Though not entirely a zero-sum environment, in general each factor comes at a cost in the others. (13) Thus, the rational actors evaluate which factors are the most important, and then plan accordingly. (14) Many engineering-centric industries have legal liabilities for quality, but still exist. (15) Though it's a point of much contention, I see no reason to believe that software as an industry would cease to exist were liability introduced, seeing as how it is fundamentally similiar to other industries. (16) Granted, introducing liability would affect profit, market strength, and so forth. (17) However, the purpose of introducing liability is not to improve the lot of the engineer, but the customer. (18) Thus, whether or not it would be better for the industry itself (even though likely) is irrelavent. (19) Changes in the requirements put upon product developers does not change the demand from product customers. (20) Thus, as long as it is conceivably possible to still profit while satisfying customers, it's reasonable to expect that products would continue to be created. (21) Accordingly, it's reasonable to expect that the changing market conditions/requirements would result in an evolution of new companies that can operate profitably in this new environment. (22) Of course, any change in the environment creates disruption. (23) So the goal is to find changes that create a level of disruption that is less than the gains the change brings.
So this is longer and more boring than I anticipated, but essentially it's my reasoning as to attempting to focus the discussion not on whether or not "liability" (undefined) is "good" or "bad", but instead on what *types* of liability would provide a net gain or loss. Do with it as you will.
What About Shared Patents?
on
Fair IP Laws?
·
· Score: 1
In short, I think the undesired side-effects of monopolistic patents can be reduced through the use of "shared" patents where all who invent the same innovation are granted equal rights in its protection. This could foster innovation and improve the economy while at the same providing additional real benefits. Consider the following:
It seems that the effective goals of IP law, specifically patents, are to:
Foster innovation
Improve the economy.
Obviously these are compatible and complementary (even codependent) goals. Furthermore, there is an implicit third goal which is to not unduly restrict other rights in this pursuit.
Currently these goals are pursued by granting monopoly power to the innovator, thereby increasing the incentive to innovate and protect the innovator's ability to bring inventions to market. However, monopoly power is merely a means to the ends stated above, not an intrinsic requirement. Indeed, if there is another system that achieves these ends in a more efficient and effective fashion, there is no reason to not consider it as an alternative.
I propose that such a system would be replacing the current monopoly power with a "shared" or "pluropoly", where not only the first-to-innovate is granted control over the innovation, but all-who-innovate the same idea are granted equal rights.
Obviously, this is a strange concept and immediately bring to mind complications. However, these complications can, with a bit of thought, be shown to be potentially resolvable. Of course nobody can accurately state whether or not the resulting system would in truth be better, but my goal here is merely to show that the resulting system *might* be better, and is worthy of further investigation. Without going into too much detail:
Innovators who claim to have independently invented the same patent would be determined by force of evidence: notes, expenses, interviews, etc. In the case of true innovation as the result of much work (such as creating a new drug), the trail of evidence would be so large (tests, FDA approval process, millions spent, etc) that a defense could be plausibly done. (Note: This has the added effect of preventing the filing of "trivial" patents, which would be very difficult to demonstrate independence of thought.)
In the case of patent violation (a non-innovative entity using the patented concept), all patent holders would have equal rights to sue the violator, either together (a class-action suit) or independently. (Note: This has the effect of reducing patent violations as the penalties would be much more strict)
Non-innovative entities wanting to license an innovation can choose from any of the many patent holders -- obtaining permission of use from one is all that is necessary. (Note: This creates an efficient competitive environment where licensing fees ultimately go down while quality of patents go up)
Of course, this would have a multitude of positive and negative effects upon innovation as whole. Without giving a complete enumeration, consider the following metaphor:
Assume invention is similar to exploring the wilderness: the inventer is an explorer that expends considerable energy blazing an easy trail to a remote destination. Thus, an inventor creates a path that's easier to walk than the path the inventor took.
Obtaining a monopolistic patent is akin to receiving the authority to bar any from walking to a particular destination, regardless of which path is taken. This authority is valuable, as if the the location is important, many are willing to pay a toll for entry.
However, this has the unintended side effect of forcing other explorers to pay a toll to a destination they discovered, despite not following the original explorer's path. This is an unfortunate restriction upon the rights of "secondary inventors" that results from granting the primary inventor a monopoly patent.
An alternate system would be using "shared patents", which are akin to granting explorers the right to blaze a trail and then charge a toll *for that trail*, but not for others. Thus, if multiple explorers blaze trails to the same destination, each is able to charge tolls for their respective trails.
Of the many effects of this change, the non-adventurous public is given the ability to choose which trail is the easiest and best price, creating a competitive environment with ultimately more explorers blazing more trails.
Likewise, it prevents explorers from actively preventing people from visiting some destinations by setting the toll higher than people are willing to pay. In real-world terms, this means that entrenched entities with vast IP stores would have increased difficulty blocking disruptive technologies by acquiring patents on innovations they don't want pursued.
Obviously, there's much more to say than can be said here. But I think it's an interesting idea, and I'd love to hear your comments.
It is a big deal. The government is NOT supposed to be in a position to do this, no matter how honest you think an government agency can be. Without power, there's no need for checks on it's abuse.
You write as if you want a zero-tolerance policy for abuse of information collection, as if the mere chance of misuse is sufficient justification for it's restriction. Is this true? Do you believe this is really practical, and that you would really like the results? For example, do you think you shouldn't be allowed to drive because there's a chance you can speed?
If zero tolerance is stronger than you intended, where would you draw the line on the amount of abuse you'll tolerate? To me, a couple agents doing minor stock maniuplations isn't quite sufficient for banning all criminal information databases.
I've been doing technical writing with a few different companies (despite my engineering background), and I've found that the most workable solution is to just use Microsoft Word and email, with the final versions put up in shared folders on a common file server. As long as the set of documents in use at any one point in time is relatively small (even if the total body is large), this works just fine, even with distributed workgroups and erratic (offline) network connectivity.
If you have a huge volume of documents that are in constant collaborative use, or people frequently take documents off site for long periods, consider using CVS or VSS for check-in, check-out ability. In practice, I've almost never used version control, however.
As for distribution of drafts and collaboration, everyone I've worked with always uses email. Despite the prevalance of all sorts of neat tools, email just has the tightest and most convenient integration with everyone's workflows. It definitely has its problems, but its problems are less than using anything else.
The most difficult part of the documentation process is not technical, it's personal. Once everyone is in the habit of documenting things in digital form, the details solve themselves: If you don't have a central server, people will just send it back and forth in email, and that works fine. If you don't have version control, people just write change histories into the documents themselves, and that works fine. If you don't have the same tools, everything goes to the lowest common denominator (GIF and Word, or even HTML, usually), and that works fine.
In reality, if at all possible, just using *only* email works great. As long as you can get by without fancy formatting (or are ok using HTML-enhanced email), it works great. Everyone will end up mailing all the documents back and forth, and your email server will inevitably turn into your primary file server anyway (the latest server is always in your inbox, not on the file server), so just realizing this up front keeps everything simple.
Indeed, I'd recommend starting out with a minimum of rules strictly enforced, rather than a few that are lenient. Were I to pick a single rule that solves most issues, it'd be "Return document reviews or a new ETA within 24 hours, always. No exceptions." In this way, progress always continues despite any technical problems.
When it comes to documetnation processes, less is more. People are smart -- let them figure out the details as they come up.
I full-time telecommute from Cupertino, CA for a company in Utah, and it's working out great. In order to make it work, I made a direct plea for my happiness, and thus productivity. Basically, I tried to make a compelling argument to demonstrate that I would be no *less* effective as a telecommuter, and thus any difference could only be positive. I've attached below the complete discussion regarding me becoming a telecommuter:
-----
From: David Barrett
Sent: Friday, June 08, 2001 12:25 PM
To: [My boss]
Subject: RE: What about telecommuting?
Ahh, the house hunting begins. Boy I despise moving. But I love San Francisco. It's such a dilemma... Thanks again for your help.
-david:)
> -----Original Message-----
> From: [My boss]
> Sent: Friday, June 08, 2001 12:31 PM
> To: David Barrett
> Subject: RE: What about telecommuting?
>
>
> Sounds good. [My boss's boss] said to send your bill for your ISP as an
> expense report and we'll pay it (or at least the $50 portion
> - I haven't mentioned that it would be more than that). Let
> me know if you think of something I can do. Also, let me know
> when you get moved. You'll need to let HR know about your new
> address and any other changes in your personal information.
> Have fun house hunting!
>
> [My boss]
>
> -----Original Message-----
> From: David Barrett
> Sent: Friday, June 08, 2001 1:00 PM
> To: [My boss]
> Subject: RE: What about telecommuting?
>
>
> Wow, great! Thanks a million! I'm intending to get the
> wireless ISP called "Ricochet", which is pretty pricey, but
> I'll gladly pick up the remainder. Also, my cell phone has
> far more minutes than I actually use, and they're all the
> same price (local or long-distance), so I don't see that
> being a problem.
>
> Hm... I don't think there's anything I need you to do on your
> end, but I'll let you know if I figure something out. Thanks again!
>
> -david:)
>
> > -----Original Message-----
> > From: [My boss]
> > Sent: Friday, June 08, 2001 11:54 AM
> > To: David Barrett
> > Subject: RE: What about telecommuting?
> >
> >
> > Okay, you have approval to telecommute. Here are the only
> > concerns voiced, so you know and can make sure to avoid them
> >:) We need a way to be able to get a hold of you at anytime
> > during work hours. I know you said you have a cell phone, so
> > that is a good option. Is your plan such that it will not
> > cost you a fortune if people call you on your cell phone?
> > Will you still have another business type phone we can
> > contact you on? Also, [My boss's boss] said to find an ISP and [My company]
> > will pay the bill (he said as long as it wasn't over $50).
> > That way you can have network access as well. I don't know if
> > you already have an ISP or if you want to work with IS to
> > find the best option - money wise and speed/access wise.
> >
> > I'm excited for you that this has worked out. Let me know
> > what I can do to help you get everything set up. Just so you
> > know, [Our CTO] was consulted on your telecommuting as well and
> > he said as long as I was comfortable with your being able to
> > meet your deliverables, he was fine with it as well. [My boss's boss] had
> > me check with [Our CTO] just as a second ok.
> >
> > So, again, let me know what you need from this end.
> >
> >
> > [My boss]
> >
> > -----Original Message-----
> > From: David Barrett
> > Sent: Wednesday, June 06, 2001 2:29 PM
> > To: [My boss]
> > Subject: RE: What about telecommuting?
> >
> >
> > Great, thanks for considering it as an option. Here are the
> > pros and cons as I see them:
> >
> > --- Cons ---
> > (1) I would operate without physical supervision or
> > oversight. However, in reality this is already the case, as
> > I don't report to anyone here as it is. Plus, my office is
> > located in such a fashion that the only person I see with any
> > regularity is [Our CTO], and even that is rare. Thus, it seems
> > to me that if I've operated acceptably without supervision
> > until now, I see no reason why I would fail to operate
> > acceptably in the future.
> >
> > (2) I wouldn't have immediate access to the resources of the
> > office. For example, it'd be difficult to get a fax to me
> > immediately. However, I don't see this as a major hindrance,
> > as aside from the printer, I don't really use the resources
> > here as it is. I rarely fax things or make copies, and I
> > only get about one phone call a week (and that could easily
> > be moved to my cell phone). Plus, I can easily get an
> > Internet connection that will allow me continual access to
> > the [My company] VPN from anywhere.
> >
> > (3) I would be less available for spontaneous, unscheduled
> > physical meetings. As it is, I rarely work with anyone in
> > this office. Thus, I rarely meet with them on a
> > pre-scheduled basis, and even more rarely without planning.
> > I can easily arrange to be in the office for scheduled
> > meetings, and I'd happily remain "on call" to come in to meet
> > with people as needed.
> >
> > --- Pros ---
> > (1) I could move to San Francisco. I've been dreaming of
> > doing it for literally my entire life, and the only thing
> > preventing me from doing so is an obligation to show up at
> > this office every day.
> >
> > (2) I would be more productive. I've known for years that I
> > operate best outside of the office, and I'd be happy to
> > provide references to previous employers to justify that
> > statement. As it is, I only stay in the office long enough
> > to check my email and access file servers, and then I take my
> > laptop somewhere else to do my writing. Thus, I would not
> > only remain at least as productive as I already have been,
> > but would likely become more productive by not limiting my
> > Internet access to short office visits.
> >
> > (3) I would be happier. Without getting too deeply into a
> > philosophical discussion about what makes life good, let's
> > just say that I try to structure my life in such a fashion as
> > to maximize freedoms. One of those freedoms is a decoupling
> > of physical location and virtual productivity. Due to a
> > combination of a fast wireless network (Ricochet), a job
> > where I can make a valuable contribution from a remote
> > location, and the proven ability to effectively operate
> > without physical supervision, I am in a unique position to
> > realize this wonderful freedom. I fully understand that not
> > everybody has these same factors in their lives -- indeed,
> > without any one of these factors the others are irrelevant.
> > However, I have all three factors in my life, and it seems
> > like a shame to waste such an opportunity.
> >
> >
> > Thanks for considering this possibility, and please let me
> > know if there's anything I can do better the chances of this
> > getting approved!
> >
> > -david:)
> >
> >
> > > -----Original Message-----
> > > From: [My boss]
> > > Sent: Wednesday, June 06, 2001 8:24 AM
> > > To: David Barrett
> > > Subject: RE: What about telecommuting?
> > >
> > >
> > > I really don't have a problem with telecommuting - I think
> > > for some people it is a great option if they don't have lots
> > > of distractions at home or are able to manage those
> > > distractions. I'm not sure how [My boss's boss] feels about it. Let me
> > > talk to him and I'll get back to you.
> > >
> > > Why don't you send me a list of what you feel the pros and
> > > cons are for telecommuting in your situation (I have
> > > documents that generally list them, I'd rather have a list
> > > specific to your situation). Once I get that, I'll talk with
> > > [My boss's boss]. I know he is out today, so it may be a day or two before
> > > I can catch up with him.
> > >
> > > Thanks!!
> > >
> > > [My boss]
> > >
> > > -----Original Message-----
> > > From: David Barrett
> > > Sent: Tuesday, June 05, 2001 5:33 PM
> > > To: [My boss]
> > > Subject: What about telecommuting?
> > >
> > >
> > > [My boss] - What are your thoughts on telecommuting? I looked
> > > around a bit but couldn't find anything that discusses
> > > the topic. Currently it's a big inconvenience to work out of
> > > the Cupertino office, as there's nothing I can do here that I
> > > can't do elsewhere. Aside from a good net connection,
> > > printout capability, and free drinks, this office isn't of
> > > much use to me. Only very rarely do I actually work with or
> > > professionally interact with the people here -- at a
> > > frequency that I could easily maintain even were I to
> work remotely.
> > >
> > > As it is, this office is the only thing that prevents me from
> > > moving to San Francisco (about a 45-1.5 hour drive, depending
> > > on the traffic), something I've been dreaming of doing for
> > > years. Seeing as how I end up driving there every other day
> > > anyway, it's a big drain on time and gas money to keep going
> > > back and forth. Between my laptop, cell phone, and wireless
> > > network connection (which I can get), I can be equally
> > > productive from virtually anywhere. Really, as best as I can
> > > tell, I am much more productive in the comfortable atmosphere
> > > of coffee shops and restaurants than in the sterile confines
> > > of an office anyway.
> > >
> > > Basically, as I see it, there are lots of upsides and few
> > > downsides to me working remotely. But that's just my
> > > perspective. What are your thoughts?
> > >
> > > -david:)
> > >
> >
>
Everyone here seems rather informed regarding the whole issue, so I'll pose a question here I'm struggling to get answered:
What's the "best" way to have websites across different domains (www.aaaa.com, www.bbbb.com) perform a single logon? Ideally I'd be able to enter a userID into either site, and the back end systems would do the account data sharing (but that's not the part the concerns me). What I'm curious about is how, after entering my name into one of the sites, I can go directly to the other site and have it automatically recognize me without having to re-login.
The ideal solution would be to use some sort of "global" cookie that has an encrypted userID in it, such that the constellation of cooperative websites would have a shared key to decrypt it. With this sort of global cookie, the user could log on once to any website and be able to automatically authenticate to the others. However, as best as I can tell, this sort of global cookie feature does not exist. It may be possible to write a cookie specifically intended for a single other website, but that doesn't really scale well (and it assumes that every website knows the identities of every other website that is participating in the single logon).
How would you approach and solve this problem? Thanks!
We'd absolutely love to talk with you. Please see https://expensify.com/jobs, or write jobs@expensify.com -- we look for people *exactly* like you. Here's what's written on our site: https://www.expensify.com/jobs/need
Who We Need: Engineers, Entrepreneurs, Expert Generalists
We are always hiring talented generalist programmers. But if you really like titles, we're looking for:
- Salespeople (of the future!!)
- Fresh graduates (graduating soon)
- College dropouts (graduating never)
- Senior programmers (there's no such thing as overqualified)
- Mobile developers (iOS, Android, BlackBerry, Windows Phone... even webOS)
- Systems programmers (back end performance and stability)
- Web developers (bring on the PHP!)
- Front-end engineers (jQuery, HTML, CSS, all that)
- Web designer (PSD, HTML, CSS)
We're not looking to stick cogs in a big machine.
We need people who can do pretty much everything and immediately learn how to do the rest. Before even thinking about the skills, we're looking for you to be:
An incredibly hard worker, even when it's not so fun.
There is a ton of work to do, and a lot of it downright sucks. After all - we do the sucky work so our customers won't need to. We need you to buck up and grind through random tasks, server logs, user emails, source code, and bug reports, without complaint or supervision, and come back asking for more.
A cool person to be with.
Not a crazy party animal, just someone we can trust, rely upon, hang out with, bounce ideas off of, and generally interact with in a positive way, both personally and professionally. In fact, this is one of the most stringent requirements we have: would you be fun to hang out with day and night on some remote, exotic beach? This isn't a rhetorical question, either: every year we take the company overseas for a month (on your own dime, sorry) and work incredibly hard while having a ton of fun. We've done Thailand, Mexico, India, Turkey, and the Philippines. Where do you want to go next?
Super talented, in a general way.
We're going to throw a ton of work at you of every possible sort, and you need that magic skill of being able to figure it out even if you have no idea where to start. Everyone helps with tech support, schmoozing at swank parties, hosting events, coming up with new and ever-more-ridiculous marketing stunts, etc. And if you code, you'll code everything: you might do mobile one day, front-end design, back-end optimization, low-level debugging, the works. This is not a monkey job - you're going to be a full participant in the process, and you need to bring your own unique blend of skills to the table.
Even more talented in a programming way.
You can instantly visualize solutions to problems big and small. Your code is always clean, well commented, has good nomenclature and indentation. You can switch on a dime between C++, PHP, Bash, Cron, HTML, CSS, JavaScript, jQuery, Dwoo, SQL — not because you know them all, but because you're the sort of person who can just pick it up and figure it out. If you're this sort of person, you'll know what we mean. If not, then this position isn't for you.
Basically, we're looking for people who want to do amazing things with their careers, and who are searching for a way to get started or take the next incredible step. Does this sound like you? If so, read on...
Please check us out!
-david
Founder and CEO of Expensify
Follow us at http://twitter.com/expensify
True, I don't spend much time in Chicago. I've spent a fair amount of time in India, Egypt, South Africa, South America, Cambodia, Malaysia, and lots and lots of other places, but I agree that most places overseas aren't as dangerous as US inner cities. It sounds like you have first hand with Nigeria and can attest to it being bad?
You're wrong. Things get stolen only when you leave them out of site/mind for too long. If it's on you at all times, nobody messes with you, and mugging is extremely rare. The world is not as unsafe or difficult as you might think.
I've travelled around the world and back again (http://360togo.com, http://swooshcompound.com/ and the Sony TR3AP is the best option. Make sure you have:
1) Small physical dimensions. Something like a 10" screen. (I really miss my C1MV). It's big enough to get real work done, but no so big that you stand out like a sore thumb. This seems silly, but if you're going the places you say you're going, you'll feel very self conscious about flashing something worth more than their annual salary around.
2) Awesome battery life. I carry two extra-size TR3AP batteries at all time, so I have 10-12 hours of battery life. I hear the new TZ series is even better.
3) Ethernet port. Wifi is rare, and more often than not you'll end up going to an internet cafe, unplugging one of their computers, and plugging the wire into yours. Bring your own ethernet cable.
4) Connectors for your camera. I have a Sony camera so the memory stick reader is built right in. Otherwise USB works in a bind.
The TR3AP has all these. They're available on eBay for $600-800. Extra batteries are like $100. It has a built-in webcam for Skype. It's a fantastic computer for anything you need to do, up to and including software development. (Not games, sorry.) I bought mine new years and years ago, and it only now just broke. I just bought a new one off of eBay; the only complaint I have is Ubuntu 7.10 doesn't support hibernate/suspend out of the box on it. But between breaking my old one and buying this new (used) one I was using a MacBook, and I can't wait to get back to the smaller form factor.
Don't worry about ruggadized components; laptops are really sturdy. Just keep it on you at *all times*. like, literally. In showers. In clubs. In the bathroom. At all times. If your laptop is too big you will get lax, and then it'll get stolen.
Also don't worry about a modem port. You'll never use it. International phone jacks are even less standardized than electricity.
Don't worry about voltage converters. Don't get the stupid "world traveller plug adapter kit". Just pick up a plug adapter at 7-11 when you land in a new country and you'll be fine. Pretty much any laptop's AC adapter supports all relevant voltages.
Don't get a laptop case. It's just bulk you don't need.
That's my advice, good luck and have fun!
-david
Math is so overrated with respect to programming. It's idiotic to have (for example) four years of calculus, unless you happen to be writing Mathematica. Programming is more like management than mathematics. I think this guy is right on the money.
Take your laptop if you intend to use it on a frequent basis. But if it's just for offloading photos, it'll probably be better to just store them on your IPod, or even better, burn DVDs at internet cafes and mail them to yourself. Just make sure that whatever you bring you keep on yourself *always*. Take everything to the shower, to the bathroom, out clubbing, etc. Sleep with you backpack. Sounds absurd, but stuff does get stolen, everywhere. In fact, the only time I had anything stolen was a writing notebook taken literally out of my backpack at a club.
(http://360togo.com documents my trip around the world for a year with my laptop, which never got stolen.)
Also, take the smallest possible backpack. If you're taking more than a messenger bag, you're taking too much. I recommend the "Healthy Backpack" -- about the size of a large tennis racquet's cover. You truly don't need more than that.
To offload the bandwidth you might consider using a P2P CDN like Red Swoosh (www.redswoosh.net). The nice thing about P2P is the more people you deliver to, the more efficient it becomes in pulling from peer, and the faster the downloads go.
Totally agree, but don't forget about products that already work, such as Red Swoosh (http://www.redswoosh.net/). Centralized video streaming is so '98; the costs are astronomical and the quality sucks. I mean, we can't get DVD quality to stream well; HD is not even worth discussing.
-david
Red Swoosh also integrates seamlessly with web environments (unlike, say, Bittorrent which spawns a separate application), and offers a JavaScript API for creating iTune's like download managers -- all within a simple webpage.
I guess I largely disagree with your second assumption. My recommendation is to spend less energy teaching kids "what they should know", and spend more energy helping kids decide what is important to them. I find people who have clear goals naturally figure out ways to learn the necessary skills; likewise, people without goals accomplish nothing despite any amount of training.
My ideal school would consist of a graduated series of "earning the right to choose your own path": start out with standard formal classes that teach basic math, communications, computers, etc. But by succeeding in these classes you earn more flexibility and self direction. The constant thrust of the program would be to encourage and reward proactive control over your own education, while formal structured education is provided as a saftey net for those who cannot.
The role of the teacher in the self-directed classes is less about "teaching" and more as a mentor -- serving as a resource to help kids figure out what to do, and how to do it. "Failure" is redefined to mean "not trying trying to succeed" (though some more objective metrics will be required to some degree).
Basically, I would like our schools to create self-directed, self-teaching students.
-david
I agree with this post, and I will add that being sued for patent infringement is a problem that you should be happy to have (in the same sense that your servers crashing from unexepctedly high demand is a happy problem).
If you're being sued, hopefully this means you've actually created a product that was successful enough to get noticed. That's the hard part. Defending yourself from a patent suit, while expensive and shitty, isn't nearly as hard as creating a product that matters in the first place.
-david
Wow, I'm amazed by the negative reaction you inspired with your post. I'm sure there's some lesson in there, but I'm not sure it applies outside of the Slashdot forums. By and large, I've found people to be really nice in the "real world".
That said, my bit of advice is "don't overestimate the value of being right". Even if you see the solution before anyone else, and can convince anyone that lets you, and are ultimately vindicated -- it doesn't matter unless you can get your solution implemented.
I agree with the flavor of the other posts -- intellect and skill are important, but communication, persuasiveness, and leadership skills are even moreso.
-david
I'm continually amazed by how uncreative people are in defining self interest. "Self interest" need not be "money in the bank". It's a huge vector of very complex, and sometimes arbitrary goals.
For example, it's in my interests to choose vanilla, even though it might be in your interests to choose chocolate. Is it altruistic for me to give you five liters of chocolate for one liter of vanilla? No, it's pure profit -- I'm giving something away that I don't want to get something that I do.
In the ultimatum game, if people truly valued nothing but money, I agree it would be a nail in the coffin for self-interest if people didn't take all the money. However, the game is played with real people that have more in mind, and thus doesn't really say anything conclusive on the issue (other than "people seem to value more than just money").
Given any number of huge social conditioning reasons, I like to be "fair", because it avoids the feeling of "guilt" -- a feeling that "costs" me more than the money I receive. Indeed, the less "fair" I am, the more it costs me. Thus, the way to maximize my self interest is to split 50/50, because then I get money without any guilt.
Once you get slightly creative about defining self interest, the refutation of your argument is obvious. The only real definition of an individual's "profit" is "that which someone pursues". And thus by definition, people cannot help but pursue profit. It might be somewhat tautological, but it's no less true for it. Indeed, if you bristle at the obviousness of this statement, ask yourself "Why am I so hesitant to accept it?"
I think it's useful to really ask: "Why do I want this PhD?" Be honest about this question. If the answer is "because I can't get a job", "because I don't know what I want to do", or "because I don't know how to learn on my own", you really have greater problems to worry about.
One acceptable answer is that "because the software I want to write requires specialized hardware that I cannot buy on my own" (such as VR, grid computing, nanotech, or whatnot).
Another acceptable answer is "because I know a specific job/position that requires this little piece of paper, even though I know it's a valueless waste of time."
It's even fine to say "because for some strange reason it brings prestige, and I want that".
In any of these, the PhD is a means to a specific end. But if you don't know how a PhD will specifically help your career, or how it gets you toward a specific goal, I cannot see why you would want to do it.
It consumes time and money, and has no guarantee of bringing anything on the other side. All it demonstrates is that you were willing to spend time and money to get a piece of paper, and if somone is impressed something as inane as that, should you really care what they think?
On top of that, I truly do believe a PhD is a liability in the engineering world (though perhaps requisite for CTO, though why this is the case is beyond me). I've had the unfortunate experience of working with several PhDs, and the results have been consistently grim. This is merely my contribution to the mass of ancedotal information against hiring PhDs for doing "real work".
Maybe you will beat the odds and actually pull some real-world value out of the PhD. But chances are, if you don't know clearly why you will be better off than all the other inept PhDs out there, you won't.
The theory behind free markets is that the most efficient producer wins. Over time, the system as a whole wins, because it's optimally efficient. What I'm curious is: in a free market, would the US win more or less than others? Does the US have any defensible competitive advantage for producing software, or indeed anything?
On one hand, some might argue that our safety and envionmental laws limit our competitiveness, and that less regulated countries will thus dominate the markets. But on the other hand, it could be argued that our very dominance comes as a result of these very same regulations.
The same could be said about economic disparity: while it's not great in the US, its orders of magnitude worse in China and India. Thus the problems we face in the US will only be magnified in the others. Ultimately this might affect their stability and security, which may hinder international investment.
Finally, the US has evolved its societal infrastructure over the course of literally hundreds of years without substantial interruption -- security, clean water, reliable power, and (some) political representation have been the norm in the US for generations. The destabilizing events of the modern world affect everyone, but affect the US less than most.
So in the end, I suspect that the US will ultimately benefit more from free trade than by protectionist measures, but not because we're better coders or inventors. Rather, I think the product of the nation's entire history gives us a competitive advantage that isn't going away soon.
Howver, I really don't know. Any thoughts?
First, as someone who works a lot in both the USA and Canada, I can guarantee you that living costs in Canada are, on average, HIGHER than the USA.
Hm... I'm considering moving to Canada (Vancouver) and am very curious on this topic. In particular, I'm trying to figure out how to compare salaries in the US to those in Canada, adjusted by my lifestyle.
For example, housing appears to be much cheaper in Vancouver than SF (even when both are priced in US dollars), but because I'm only renting the smallest, cheapest place I can find, the overall savings for my lifestyle are very slim. At the same time, those areas where I do spend freely (nightlife, restaurants, imported equipment, international travel) are definitely more expensive in Vancouver than in SF. On top of that are the higher taxes, as well as intangibles like slower health care (it may be more expensive in the US, but it's faster and not taken out of your salary in the form of taxes), and so on.
Thus, I'm struggling to figure out what salary in Vancouver/Canadian dollars would be equivalent to a $85k US salary in San Franciso. Right now I'm thinking a good number is around $130k CA, but I really don't know. Any insight? Thanks!
Though I'm sure I'm not the first to state it, a slowing Earth would increase gravity over time (due to a reduction in the fictional "centrifugal force"), and thus may explain why such huge animals like dinosaurs were at one point abundant, but now extinct. This slowing may just be a natural result of friction from the atmosphere, moon, and fluidic core (ie, compare the spin of a boiled versus raw egg).
I have had one for the past six months and absolutely love it. The portability is just incredible, to the point it's been about my only luggage on my trip around the world. With the quad-battery upgrade you can pretty reliably get 8-10 hours on a full charge (nowhere near the 15 advertised, of course). And, though the transmeta is a bit sluggish, it's entirely adequate any non-gaming task (I do contract technical writing as I travel and it's paid for itself a couple times over). Furthermore, though not DoomIII-compliant, the ATI Radeon mobile is suprisingly quick and has been sufficient for me to continue 3d graphics programming while traveling. The camera is a pointless, granted (low res, takes ages to initialize, only digital zoom, manual focus), but the laptop itself is a godsend.
I think the biggest benefit of this laptop is that it's finally found a combination of speed, portability, and battery life such that you no longer have to ask yourself "should I bring my laptop today?" Instead, you just always have it in your bag, charged up the night before, to whip out at cafes or plane rides.
I can't recommend it enough.
One way to analyze this problem is to note the interdependencies of privacy, money, accountabiliy, etc. I've outlined this analysis at, called the Privacy Feedback Loop:
s Computing/IntrinsicSecurity/Privacy/index.html
s earch/T alisman/index.html
http://www.quinthar.com/UbiquityProject/Ubiquitou
Privacy Feedback Loop
The balance between privacy, corporate, and government interests has always been precarious. This precarious balance has created an environment of fear - much of which is very justified, and some of which is not. The only antidote to this fear, both justified and unjustified, is a decentralized system that seeks to maximize information exposure, accuracy, and privacy protection at a self-regulating, technical level. Ubiquity must implement such a system. While Ubiquity can by no means strike the perfect balance by itself, it can provide the actors involved with the tools to do so in a secure, sustainable fashion.
Actors
There are three primary participants in the privacy feedback loop: users, services, and realms.
>
Users (Consumers): Obviously, this system focuses on the safe collection and use of consumer personal data. Thus, a major player in the system is the user herself.
>
Services (Businesses, Government): The entities actually collecting and using the user data provide services to those users being served. These entities are typically businesses offering information and products to users online or in person. However, this system would be entirely appropriate for managing new police surveillance technologies in a safe manner.
>
Realms (Trade Groups, Regulators): The final component, providing critical oversight in a decentralized fashion, are the realms. Reach realm defines and enforces standards and privacy/usage policies through a system of active certification. Active certification is what gives realms the technological "teeth" to effectively enforce policy.
Feedback Loop
Figure 1: Privacy Feedback Loop
The privacy feedback loop is illustrated in Figure 1, and consists of the following interdependent components:
>
User Privacy: Users' concepts of privacy are just measures of confidence that data is being used correctly. "Correct" use is in the eye of the beholder, but in general is guaranteed through (1) allowing the user to view and edit all personal data collected, (2) putting the user in control of who can and cannot access the data, and (3) providing extensive auditing information to demonstrate correct use. These confidence-building measures are the result of increasing accountability of the industry as a whole, and allow for greater amounts of higher quality personal data to be collected.
>
Personal Data: As user privacy increases, the amount and value of the data collected increases. Through the user's ability to review and correct all data collected, as well as automatic corrections when existing accounts become linked together, the data itself is of a higher quality and therefore more valuable. Likewise, as users become confident that the data is correctly used, the more open they are to supplying deeper levels of personal data. As the amount and value of personal data collected increases, the revenues of the services using this data do as well.
>
Service Revenue: Services use personal data in a variety of ways to reduce cost and generate revenue. Personalization features create "stickier" services, as well as drive additional product sales. Convenience features streamline the use of services, thereby reducing the time-to-purchase and "mental cost" of using the service. Immediate access to timely usage data allows fast marketing feedback to ensure, among many things, correct product positioning. All of these features rely upon and benefit from large amounts of accurate, detailed personal data. The value of these features and their effect upon the services' bottom lines cause other services to join in the system in a viral manner, increasing the membership in the system as a whole.
>
Membership: As increasing numbers of services take advantage of this ocean of personal information, the total membership of the system increases. Every new member service brings new users to the system, magnifying all of the system's elements. One major beneficiary of this magnification is the realm, which increases in realm authority.
>
Realm Authority: Realms serve as the representatives for each industry. Members look to realms to set the agenda for new standards features, and equitably resolve member conflicts. Users look to realms to define and enforce acceptable usage policies, as well as create a strong brand that users can look for and trust as they use the member services. Courts look to realms to uphold contractual obligations toward both members and users and regulate their industries in a fair manner. Realms are leaders, whose strength and power are directly determined by the number and devotion of their followers. These powers are used to force an acceptable level of accountability upon each realm's respective industry.
>
Accountability: The final link in this chain is accountability. Services that choose a particular realm's data and standards are contractually obligated and technically required to adhere to the usage policies set by that realm. These policies generally define the acceptable level of usage, such as maintaining independent copies of data, selling data outside of the realm, linking data in certain ways, and so forth. Additionally, these policies require that the realm record usage of the data in such a fashion that the user can learn how the data is used, meet certain exposure requirements on the data collected from users, etc. Through increasing levels of accountability, users can gain a greater sense of privacy, thereby completing the cycle.
More thoughts on implementation details here:
http://www.quinthar.com/UbiquityProject/Re
Though everything has already been said, I'll add my piece.
(1) All engineering fields are innovative, even brige building
(2) Innovation means change, change means uncertainty, and uncertainty means bugs
(3) Thus all engineering fields suffer from bugs (Tacoma Narrows, for example)
(4) All engineering fields have ways to minimize the effects of bugs when they arise, even if their precise nature isn't known (building to handle cases worse than expected, such as building to withstand up to richtor 9 earthquake when only up to a 6 is expected)
(5) Likewise, all fields have way to test designs for bugs before construction, or analyze implementation after construction (physics simulatations or models before, careful expections after)
(6) Therefore, all engineering fields have the option of minimizing the occurance and severity of bugs.
(7) Yet minimal bugs are only one factor in a project: time, cost, and asthetics are other factors.
(8) No factor can be perfectly achieved (there is no such thing as having something now that does not exist now, or for no cost, or at perfect asthetic elegance, or with no risk of failure).
(9) Thus, each project inovlves a balance between competing ideals.
(10) The people performing this balance are, by and large, rational actors that seek to maximize their gain and minimize loss.
(11) Thus, they seek to maximize profit, fame, customer happiness, competitive advantage, while minimizing legal liability, infamy, or customer disatisfaction, or market weakness.
(12) Though not entirely a zero-sum environment, in general each factor comes at a cost in the others.
(13) Thus, the rational actors evaluate which factors are the most important, and then plan accordingly.
(14) Many engineering-centric industries have legal liabilities for quality, but still exist.
(15) Though it's a point of much contention, I see no reason to believe that software as an industry would cease to exist were liability introduced, seeing as how it is fundamentally similiar to other industries.
(16) Granted, introducing liability would affect profit, market strength, and so forth.
(17) However, the purpose of introducing liability is not to improve the lot of the engineer, but the customer.
(18) Thus, whether or not it would be better for the industry itself (even though likely) is irrelavent.
(19) Changes in the requirements put upon product developers does not change the demand from product customers.
(20) Thus, as long as it is conceivably possible to still profit while satisfying customers, it's reasonable to expect that products would continue to be created.
(21) Accordingly, it's reasonable to expect that the changing market conditions/requirements would result in an evolution of new companies that can operate profitably in this new environment.
(22) Of course, any change in the environment creates disruption.
(23) So the goal is to find changes that create a level of disruption that is less than the gains the change brings.
So this is longer and more boring than I anticipated, but essentially it's my reasoning as to attempting to focus the discussion not on whether or not "liability" (undefined) is "good" or "bad", but instead on what *types* of liability would provide a net gain or loss. Do with it as you will.
It seems that the effective goals of IP law, specifically patents, are to:
- Foster innovation
- Improve the economy.
Obviously these are compatible and complementary (even codependent) goals. Furthermore, there is an implicit third goal which is to not unduly restrict other rights in this pursuit.Currently these goals are pursued by granting monopoly power to the innovator, thereby increasing the incentive to innovate and protect the innovator's ability to bring inventions to market. However, monopoly power is merely a means to the ends stated above, not an intrinsic requirement. Indeed, if there is another system that achieves these ends in a more efficient and effective fashion, there is no reason to not consider it as an alternative.
I propose that such a system would be replacing the current monopoly power with a "shared" or "pluropoly", where not only the first-to-innovate is granted control over the innovation, but all-who-innovate the same idea are granted equal rights.
Obviously, this is a strange concept and immediately bring to mind complications. However, these complications can, with a bit of thought, be shown to be potentially resolvable. Of course nobody can accurately state whether or not the resulting system would in truth be better, but my goal here is merely to show that the resulting system *might* be better, and is worthy of further investigation. Without going into too much detail:
- Innovators who claim to have independently invented the same patent would be determined by force of evidence: notes, expenses, interviews, etc. In the case of true innovation as the result of much work (such as creating a new drug), the trail of evidence would be so large (tests, FDA approval process, millions spent, etc) that a defense could be plausibly done. (Note: This has the added effect of preventing the filing of "trivial" patents, which would be very difficult to demonstrate independence of thought.)
- In the case of patent violation (a non-innovative entity using the patented concept), all patent holders would have equal rights to sue the violator, either together (a class-action suit) or independently. (Note: This has the effect of reducing patent violations as the penalties would be much more strict)
- Non-innovative entities wanting to license an innovation can choose from any of the many patent holders -- obtaining permission of use from one is all that is necessary. (Note: This creates an efficient competitive environment where licensing fees ultimately go down while quality of patents go up)
Of course, this would have a multitude of positive and negative effects upon innovation as whole. Without giving a complete enumeration, consider the following metaphor:Assume invention is similar to exploring the wilderness: the inventer is an explorer that expends considerable energy blazing an easy trail to a remote destination. Thus, an inventor creates a path that's easier to walk than the path the inventor took.
Obtaining a monopolistic patent is akin to receiving the authority to bar any from walking to a particular destination, regardless of which path is taken. This authority is valuable, as if the the location is important, many are willing to pay a toll for entry.
However, this has the unintended side effect of forcing other explorers to pay a toll to a destination they discovered, despite not following the original explorer's path. This is an unfortunate restriction upon the rights of "secondary inventors" that results from granting the primary inventor a monopoly patent.
An alternate system would be using "shared patents", which are akin to granting explorers the right to blaze a trail and then charge a toll *for that trail*, but not for others. Thus, if multiple explorers blaze trails to the same destination, each is able to charge tolls for their respective trails.
Of the many effects of this change, the non-adventurous public is given the ability to choose which trail is the easiest and best price, creating a competitive environment with ultimately more explorers blazing more trails.
Likewise, it prevents explorers from actively preventing people from visiting some destinations by setting the toll higher than people are willing to pay. In real-world terms, this means that entrenched entities with vast IP stores would have increased difficulty blocking disruptive technologies by acquiring patents on innovations they don't want pursued.
Obviously, there's much more to say than can be said here. But I think it's an interesting idea, and I'd love to hear your comments.
-david
quinthar.com
360ToGo.com
UbiquityProject.com
It is a big deal. The government is NOT supposed to be in a position to do this, no matter how honest you think an government agency can be. Without power, there's no need for checks on it's abuse.
n thar.com/360ToGoy Project
You write as if you want a zero-tolerance policy for abuse of information collection, as if the mere chance of misuse is sufficient justification for it's restriction. Is this true? Do you believe this is really practical, and that you would really like the results? For example, do you think you shouldn't be allowed to drive because there's a chance you can speed?
If zero tolerance is stronger than you intended, where would you draw the line on the amount of abuse you'll tolerate? To me, a couple agents doing minor stock maniuplations isn't quite sufficient for banning all criminal information databases.
-david
http://www.quinthar.com
http://www.qui
http://www.quinthar.com/Ubiquit
I've been doing technical writing with a few different companies (despite my engineering background), and I've found that the most workable solution is to just use Microsoft Word and email, with the final versions put up in shared folders on a common file server. As long as the set of documents in use at any one point in time is relatively small (even if the total body is large), this works just fine, even with distributed workgroups and erratic (offline) network connectivity.
If you have a huge volume of documents that are in constant collaborative use, or people frequently take documents off site for long periods, consider using CVS or VSS for check-in, check-out ability. In practice, I've almost never used version control, however.
As for distribution of drafts and collaboration, everyone I've worked with always uses email. Despite the prevalance of all sorts of neat tools, email just has the tightest and most convenient integration with everyone's workflows. It definitely has its problems, but its problems are less than using anything else.
The most difficult part of the documentation process is not technical, it's personal. Once everyone is in the habit of documenting things in digital form, the details solve themselves: If you don't have a central server, people will just send it back and forth in email, and that works fine. If you don't have version control, people just write change histories into the documents themselves, and that works fine. If you don't have the same tools, everything goes to the lowest common denominator (GIF and Word, or even HTML, usually), and that works fine.
In reality, if at all possible, just using *only* email works great. As long as you can get by without fancy formatting (or are ok using HTML-enhanced email), it works great. Everyone will end up mailing all the documents back and forth, and your email server will inevitably turn into your primary file server anyway (the latest server is always in your inbox, not on the file server), so just realizing this up front keeps everything simple.
Indeed, I'd recommend starting out with a minimum of rules strictly enforced, rather than a few that are lenient. Were I to pick a single rule that solves most issues, it'd be "Return document reviews or a new ETA within 24 hours, always. No exceptions." In this way, progress always continues despite any technical problems.
When it comes to documetnation processes, less is more. People are smart -- let them figure out the details as they come up.
I full-time telecommute from Cupertino, CA for a company in Utah, and it's working out great. In order to make it work, I made a direct plea for my happiness, and thus productivity. Basically, I tried to make a compelling argument to demonstrate that I would be no *less* effective as a telecommuter, and thus any difference could only be positive. I've attached below the complete discussion regarding me becoming a telecommuter:
:)
:)
:) We need a way to be able to get a hold of you at anytime
:)
:)
-----
From: David Barrett
Sent: Friday, June 08, 2001 12:25 PM
To: [My boss]
Subject: RE: What about telecommuting?
Ahh, the house hunting begins. Boy I despise moving. But I love San Francisco. It's such a dilemma... Thanks again for your help.
-david
> -----Original Message-----
> From: [My boss]
> Sent: Friday, June 08, 2001 12:31 PM
> To: David Barrett
> Subject: RE: What about telecommuting?
>
>
> Sounds good. [My boss's boss] said to send your bill for your ISP as an
> expense report and we'll pay it (or at least the $50 portion
> - I haven't mentioned that it would be more than that). Let
> me know if you think of something I can do. Also, let me know
> when you get moved. You'll need to let HR know about your new
> address and any other changes in your personal information.
> Have fun house hunting!
>
> [My boss]
>
> -----Original Message-----
> From: David Barrett
> Sent: Friday, June 08, 2001 1:00 PM
> To: [My boss]
> Subject: RE: What about telecommuting?
>
>
> Wow, great! Thanks a million! I'm intending to get the
> wireless ISP called "Ricochet", which is pretty pricey, but
> I'll gladly pick up the remainder. Also, my cell phone has
> far more minutes than I actually use, and they're all the
> same price (local or long-distance), so I don't see that
> being a problem.
>
> Hm... I don't think there's anything I need you to do on your
> end, but I'll let you know if I figure something out. Thanks again!
>
> -david
>
> > -----Original Message-----
> > From: [My boss]
> > Sent: Friday, June 08, 2001 11:54 AM
> > To: David Barrett
> > Subject: RE: What about telecommuting?
> >
> >
> > Okay, you have approval to telecommute. Here are the only
> > concerns voiced, so you know and can make sure to avoid them
> >
> > during work hours. I know you said you have a cell phone, so
> > that is a good option. Is your plan such that it will not
> > cost you a fortune if people call you on your cell phone?
> > Will you still have another business type phone we can
> > contact you on? Also, [My boss's boss] said to find an ISP and [My company]
> > will pay the bill (he said as long as it wasn't over $50).
> > That way you can have network access as well. I don't know if
> > you already have an ISP or if you want to work with IS to
> > find the best option - money wise and speed/access wise.
> >
> > I'm excited for you that this has worked out. Let me know
> > what I can do to help you get everything set up. Just so you
> > know, [Our CTO] was consulted on your telecommuting as well and
> > he said as long as I was comfortable with your being able to
> > meet your deliverables, he was fine with it as well. [My boss's boss] had
> > me check with [Our CTO] just as a second ok.
> >
> > So, again, let me know what you need from this end.
> >
> >
> > [My boss]
> >
> > -----Original Message-----
> > From: David Barrett
> > Sent: Wednesday, June 06, 2001 2:29 PM
> > To: [My boss]
> > Subject: RE: What about telecommuting?
> >
> >
> > Great, thanks for considering it as an option. Here are the
> > pros and cons as I see them:
> >
> > --- Cons ---
> > (1) I would operate without physical supervision or
> > oversight. However, in reality this is already the case, as
> > I don't report to anyone here as it is. Plus, my office is
> > located in such a fashion that the only person I see with any
> > regularity is [Our CTO], and even that is rare. Thus, it seems
> > to me that if I've operated acceptably without supervision
> > until now, I see no reason why I would fail to operate
> > acceptably in the future.
> >
> > (2) I wouldn't have immediate access to the resources of the
> > office. For example, it'd be difficult to get a fax to me
> > immediately. However, I don't see this as a major hindrance,
> > as aside from the printer, I don't really use the resources
> > here as it is. I rarely fax things or make copies, and I
> > only get about one phone call a week (and that could easily
> > be moved to my cell phone). Plus, I can easily get an
> > Internet connection that will allow me continual access to
> > the [My company] VPN from anywhere.
> >
> > (3) I would be less available for spontaneous, unscheduled
> > physical meetings. As it is, I rarely work with anyone in
> > this office. Thus, I rarely meet with them on a
> > pre-scheduled basis, and even more rarely without planning.
> > I can easily arrange to be in the office for scheduled
> > meetings, and I'd happily remain "on call" to come in to meet
> > with people as needed.
> >
> > --- Pros ---
> > (1) I could move to San Francisco. I've been dreaming of
> > doing it for literally my entire life, and the only thing
> > preventing me from doing so is an obligation to show up at
> > this office every day.
> >
> > (2) I would be more productive. I've known for years that I
> > operate best outside of the office, and I'd be happy to
> > provide references to previous employers to justify that
> > statement. As it is, I only stay in the office long enough
> > to check my email and access file servers, and then I take my
> > laptop somewhere else to do my writing. Thus, I would not
> > only remain at least as productive as I already have been,
> > but would likely become more productive by not limiting my
> > Internet access to short office visits.
> >
> > (3) I would be happier. Without getting too deeply into a
> > philosophical discussion about what makes life good, let's
> > just say that I try to structure my life in such a fashion as
> > to maximize freedoms. One of those freedoms is a decoupling
> > of physical location and virtual productivity. Due to a
> > combination of a fast wireless network (Ricochet), a job
> > where I can make a valuable contribution from a remote
> > location, and the proven ability to effectively operate
> > without physical supervision, I am in a unique position to
> > realize this wonderful freedom. I fully understand that not
> > everybody has these same factors in their lives -- indeed,
> > without any one of these factors the others are irrelevant.
> > However, I have all three factors in my life, and it seems
> > like a shame to waste such an opportunity.
> >
> >
> > Thanks for considering this possibility, and please let me
> > know if there's anything I can do better the chances of this
> > getting approved!
> >
> > -david
> >
> >
> > > -----Original Message-----
> > > From: [My boss]
> > > Sent: Wednesday, June 06, 2001 8:24 AM
> > > To: David Barrett
> > > Subject: RE: What about telecommuting?
> > >
> > >
> > > I really don't have a problem with telecommuting - I think
> > > for some people it is a great option if they don't have lots
> > > of distractions at home or are able to manage those
> > > distractions. I'm not sure how [My boss's boss] feels about it. Let me
> > > talk to him and I'll get back to you.
> > >
> > > Why don't you send me a list of what you feel the pros and
> > > cons are for telecommuting in your situation (I have
> > > documents that generally list them, I'd rather have a list
> > > specific to your situation). Once I get that, I'll talk with
> > > [My boss's boss]. I know he is out today, so it may be a day or two before
> > > I can catch up with him.
> > >
> > > Thanks!!
> > >
> > > [My boss]
> > >
> > > -----Original Message-----
> > > From: David Barrett
> > > Sent: Tuesday, June 05, 2001 5:33 PM
> > > To: [My boss]
> > > Subject: What about telecommuting?
> > >
> > >
> > > [My boss] - What are your thoughts on telecommuting? I looked
> > > around a bit but couldn't find anything that discusses
> > > the topic. Currently it's a big inconvenience to work out of
> > > the Cupertino office, as there's nothing I can do here that I
> > > can't do elsewhere. Aside from a good net connection,
> > > printout capability, and free drinks, this office isn't of
> > > much use to me. Only very rarely do I actually work with or
> > > professionally interact with the people here -- at a
> > > frequency that I could easily maintain even were I to
> work remotely.
> > >
> > > As it is, this office is the only thing that prevents me from
> > > moving to San Francisco (about a 45-1.5 hour drive, depending
> > > on the traffic), something I've been dreaming of doing for
> > > years. Seeing as how I end up driving there every other day
> > > anyway, it's a big drain on time and gas money to keep going
> > > back and forth. Between my laptop, cell phone, and wireless
> > > network connection (which I can get), I can be equally
> > > productive from virtually anywhere. Really, as best as I can
> > > tell, I am much more productive in the comfortable atmosphere
> > > of coffee shops and restaurants than in the sterile confines
> > > of an office anyway.
> > >
> > > Basically, as I see it, there are lots of upsides and few
> > > downsides to me working remotely. But that's just my
> > > perspective. What are your thoughts?
> > >
> > > -david
> > >
> >
>
Everyone here seems rather informed regarding the whole issue, so I'll pose a question here I'm struggling to get answered:
What's the "best" way to have websites across different domains (www.aaaa.com, www.bbbb.com) perform a single logon? Ideally I'd be able to enter a userID into either site, and the back end systems would do the account data sharing (but that's not the part the concerns me). What I'm curious about is how, after entering my name into one of the sites, I can go directly to the other site and have it automatically recognize me without having to re-login.
The ideal solution would be to use some sort of "global" cookie that has an encrypted userID in it, such that the constellation of cooperative websites would have a shared key to decrypt it. With this sort of global cookie, the user could log on once to any website and be able to automatically authenticate to the others. However, as best as I can tell, this sort of global cookie feature does not exist. It may be possible to write a cookie specifically intended for a single other website, but that doesn't really scale well (and it assumes that every website knows the identities of every other website that is participating in the single logon).
How would you approach and solve this problem? Thanks!