The biggest problem I've had so far is Interface Builder. It isn't the most intuitive piece of software. Dragging and dropping to connect button actions to methods between two pieces of software (XCode and Interface Builder) that don't actively sync with one another, at least not as I've yet to find.
I already had the C/C++ and GUI/fat client app building experience from 10 years back.
A group of humans heads off to some far off planet out of our solar system. Earth loses contact. Hundreds of years later we finally head out to the planet only to find spider people who think we are their gods.
Perhaps those spider people are those from Verner Vinge's A Deepness In The Sky.
Pick a business that you find interesting and research the typical technology solutions. If you don't think you can code or deal with hardware all day, then you better like the business with which you work.
I'd guess you are contributing to gain some reputation, either community, professionally, or both. Otherwise, why would it matter? If it is privacy that is your highest concern, then don't do it.
- Do what you feel comfortable with doing. - Protect yourself and your personal and professional reputations. - Don't participate in pissing matches, especially on Internet available forums. - Don't be a dick (e.g. that ruby on rails rant guy that said indicated past clients wanted to work with him yet in reading his rant you knew you didn't want to work with him).
I think you are on the right track, i.e. explaining things from the point of view of the things they use (phone, internet, etc). From there, I would compare your job to something similar that isn't so abstract, e.g. car mechainic, plumber, etc. This isn't to confuse them, but to tell them your role. Lastly, talk about what your company does and how you fit into it.
As for visual aids, a picture of a command prompt won't do. Perhaps a single presentation slide that shows people working on the things they understand (phone, computer, spaceship) all connected to computer you are working on/operating. Put a wrench in your hand or floating around you somewhere. Point out that this is you. After all, they are only 8.
I think some of you here are missing the point of the product. It is an appliance of sorts that is meant to compete with the likes of Netezza and Teradata, i.e. massively parallel, share nothing database architectures meant for datawarehousing. Typically, that means long running queries over gigabytes and terabytes of data.
Note the name of Exabyte. The prefix "exa" is greater than the prefix of "tera" in Teradata. They are trying to compete with Teradata.
Sure, it also claims to have good OLTP capability in addition to going for the OLAP market. But, this isn't a product for a web app database, high transaction volume (hotel reservations), or customer database. It is a product to mine all of the data generated by customers you interact with. All the data you generate when all the doubleclick, etc., tags fire on your websites.
The point of having several 1U, 2 processor machines is to make it like a grid. Again, this is for massively parallel database architectures. I am sure that the the storage servers serve the data to an Oracle RAC installation, thus the 1U 2 processor machines as RAC is meant to be run on lots of small machines.
On the note of massively parallel database architectures, check out Greenplum for a company using MySQL to attack this market.
Though this post is my introduction to both MapReduce and the argument, it strikes me that the people arguing are arguing the wrong problem.
While MapReduce might be used against some structured data, it looks to be something for unstructured data and dynamically inventing structures in unstructured data. Additionally, you might want to keep that new structure around for a while. You might want to load it up with terabytes of data. At the same time, this data is less and less useful over time.
Think about two of the key pieces of data Google has, web pages and user interaction and preference data. Web pages change over time. Web sites come and go. Some change a lot (news sites) and some change very little.
There is a LOT of user interaction data. Clicks on pages, javascript that fires to doubleclick, etc. With preferences, that changes over time, too. Also, marketers want to dynamically react to the clicks and even the minute change of a preference that generates a buck.
With such a large, changing, and time sensitive dataset, how could it be structured into something as relatively static as a schema? You would box yourself in by making it a schema and defining all the possible relationships.
So, you take it up one abstraction level and make a "schema" for making relationships. Further more, there is a narrow window within which you even care about data and how it is structured. Granted, you want the webpage/site data to stick around for queries. But even that is marginally useful. Think about how many pages you go into a query on google? I'm sure that will vary by person, but I'd also bet that in practice it is pretty small.
Maybe everyone else gets that and I'm just late to the party. But my point is that the wrong argument is being made that this should follow all the RDBMS work that has come to date.
Sure, I do agree that they shouldn't completely ignore all of the research, but to suggest it has to have a schema, indices, etc. just comes across as arguing all data problems belong in a traditional database.
Or maybe I can take a different approach to this....my brain doesn't have an index. It does categorize data and it can categorize the same piece of data in multiple ways. As I learn new things, my brain creates new "indices" of sort. A large portion of the data in my brain is time sensitive, or indexed over time. The older I get, the more the details of the minutia of life (what I had for dinner this evening) isn't important any more and it loses its categorization. I don't have a schema for my brain, rather I have multiple and I invent and dissolve them over time. I don't know what new one I'll need in the future. I can't know that and without that, I can't make a schema for it. I also can't be constantly modifying the same schema in place. It is easier for me to invent a new one as I go and just abandon the old ones. Sure, new schemas will have parts of the old, but it is still a new schema with the old one still in place and referencing the same data that the new one will soon reference.
I welcome our new simian overlords? Not simbian, you pervs. I can see the evolution picture now....apes to man to apes again (or at least the hunched big arm posture because of the screens, assuming proliferation in the future).
The key thing is this book is illustrated. Often, I'd rather see the snippet and the picture of what it would do rather than read the official spec. That isn't to say that the spec shouldn't be read. Saying that anyone wanting to learn CSS should start with the W3C spec is like referring someone who wants to learn C to the BNF describing the C language.
Start out being a student then head to becoming the master. If you communicate with others in the most abstract way (W3C spec, even with its examples), then they won't want to communicate with you no matter how smart you are.
What about it are you reviewing? Is it the layout? Is it how it has been styled (colors, fonts, etc.)? Is it all of this? What is your design process on the front end? Do you create "wire frames" while designing the application? Is this a web application?
I just think the white space makes the code easier to read, especially in the absence of comments or function/variable naming standards. Think of the ideas like paragraphs.
Another two good ones are all caps on CONSTANTS and constants on the left of a comparison, e.g. CONSTANT == var, to catch any assignment typos.
Bad (or silly):
- line length restrictions
I've just never found this one useful. Usually, the reason for it is for printing, more so for older printers that would truncate past 80 characters.
My first thought was "Wow, your bandwidth is precious and you waste it on posting to Ask Slashdot?" Sure, there could be someone here with extensive knowledge and experience with network infrastructure that communicates with satellites. Regardless, it is still like asking someone who just stayed at a Holiday Inn last night (or that just read a magazine article about it, if you haven't seen the Holiday Inn commercials).
There is going to be way to many worthless posts here to filter through. I hope the mod system helps you out a bit. Perhaps even modding down this post....
Well then their competitors will beat them by using the superior tool and shipping a product faster, better, cheaper. That IS free-market economics. Not every company is going to make the best decisions. The best teams will survive, the weakest will fail. I have to disagree. I'm willing to be that the competitors will use the same tool and compromise on either features or quality to get it out the door first. This is all under the pretense that they can get an infusion of cash to then increase both features and quality as time goes on. Features will win because they will be trying to win the war of competition rather than have a truly quality product.
Granted, there are times where quality will win, e.g. World of Warcraft. The challenge here then becomes maintaining a frequent enough release schedule without compromising the quality or boring your uers.
The biggest problem I've had so far is Interface Builder. It isn't the most intuitive piece of software. Dragging and dropping to connect button actions to methods between two pieces of software (XCode and Interface Builder) that don't actively sync with one another, at least not as I've yet to find.
I already had the C/C++ and GUI/fat client app building experience from 10 years back.
+fragbait
I can see the B movie now....
A group of humans heads off to some far off planet out of our solar system. Earth loses contact. Hundreds of years later we finally head out to the planet only to find spider people who think we are their gods.
Perhaps those spider people are those from Verner Vinge's A Deepness In The Sky.
+fragbait
Pick a business that you find interesting and research the typical technology solutions. If you don't think you can code or deal with hardware all day, then you better like the business with which you work.
-fragbait
I'd guess you are contributing to gain some reputation, either community, professionally, or both. Otherwise, why would it matter? If it is privacy that is your highest concern, then don't do it.
- Do what you feel comfortable with doing.
- Protect yourself and your personal and professional reputations.
- Don't participate in pissing matches, especially on Internet available forums.
- Don't be a dick (e.g. that ruby on rails rant guy that said indicated past clients wanted to work with him yet in reading his rant you knew you didn't want to work with him).
-fragbait
I think you are on the right track, i.e. explaining things from the point of view of the things they use (phone, internet, etc). From there, I would compare your job to something similar that isn't so abstract, e.g. car mechainic, plumber, etc. This isn't to confuse them, but to tell them your role. Lastly, talk about what your company does and how you fit into it.
As for visual aids, a picture of a command prompt won't do. Perhaps a single presentation slide that shows people working on the things they understand (phone, computer, spaceship) all connected to computer you are working on/operating. Put a wrench in your hand or floating around you somewhere. Point out that this is you. After all, they are only 8.
-fragbait
....doesn't need the corporate engine in order to CONTINUE to succeed. He was already successful with help from the corporate machine.
-fragbait
Perhaps it'll show up here one day.
Federal Enterprise Architecture
-fragbait
I think some of you here are missing the point of the product. It is an appliance of sorts that is meant to compete with the likes of Netezza and Teradata, i.e. massively parallel, share nothing database architectures meant for datawarehousing. Typically, that means long running queries over gigabytes and terabytes of data.
Note the name of Exabyte. The prefix "exa" is greater than the prefix of "tera" in Teradata. They are trying to compete with Teradata.
Sure, it also claims to have good OLTP capability in addition to going for the OLAP market. But, this isn't a product for a web app database, high transaction volume (hotel reservations), or customer database. It is a product to mine all of the data generated by customers you interact with. All the data you generate when all the doubleclick, etc., tags fire on your websites.
The point of having several 1U, 2 processor machines is to make it like a grid. Again, this is for massively parallel database architectures. I am sure that the the storage servers serve the data to an Oracle RAC installation, thus the 1U 2 processor machines as RAC is meant to be run on lots of small machines.
On the note of massively parallel database architectures, check out Greenplum for a company using MySQL to attack this market.
-fragbait
Perhaps this a question for Stack Overflow?
-fragbait
Every gnome in the game get ready to get your pink mohawk! ...buncha sheep. At least I'm not bitter.
-fragbait
- Land mass of Rhode Island is 1045 sq. mi.
- Manhattan is 34 sq. mi.
So, this piece of ice is 3/100ths of a Rhode Island.
Now, I'm not as worried.
-fragbait
With the white on green, this should be renamed to bizzaro slashdot. Add a goatee, too, while you are at it.
-fragbait
Though this post is my introduction to both MapReduce and the argument, it strikes me that the people arguing are arguing the wrong problem.
While MapReduce might be used against some structured data, it looks to be something for unstructured data and dynamically inventing structures in unstructured data. Additionally, you might want to keep that new structure around for a while. You might want to load it up with terabytes of data. At the same time, this data is less and less useful over time.
Think about two of the key pieces of data Google has, web pages and user interaction and preference data. Web pages change over time. Web sites come and go. Some change a lot (news sites) and some change very little.
There is a LOT of user interaction data. Clicks on pages, javascript that fires to doubleclick, etc. With preferences, that changes over time, too. Also, marketers want to dynamically react to the clicks and even the minute change of a preference that generates a buck.
With such a large, changing, and time sensitive dataset, how could it be structured into something as relatively static as a schema? You would box yourself in by making it a schema and defining all the possible relationships.
So, you take it up one abstraction level and make a "schema" for making relationships. Further more, there is a narrow window within which you even care about data and how it is structured. Granted, you want the webpage/site data to stick around for queries. But even that is marginally useful. Think about how many pages you go into a query on google? I'm sure that will vary by person, but I'd also bet that in practice it is pretty small.
Maybe everyone else gets that and I'm just late to the party. But my point is that the wrong argument is being made that this should follow all the RDBMS work that has come to date.
Sure, I do agree that they shouldn't completely ignore all of the research, but to suggest it has to have a schema, indices, etc. just comes across as arguing all data problems belong in a traditional database.
Or maybe I can take a different approach to this....my brain doesn't have an index. It does categorize data and it can categorize the same piece of data in multiple ways. As I learn new things, my brain creates new "indices" of sort. A large portion of the data in my brain is time sensitive, or indexed over time. The older I get, the more the details of the minutia of life (what I had for dinner this evening) isn't important any more and it loses its categorization. I don't have a schema for my brain, rather I have multiple and I invent and dissolve them over time. I don't know what new one I'll need in the future. I can't know that and without that, I can't make a schema for it. I also can't be constantly modifying the same schema in place. It is easier for me to invent a new one as I go and just abandon the old ones. Sure, new schemas will have parts of the old, but it is still a new schema with the old one still in place and referencing the same data that the new one will soon reference.
-fragbait
What is the average amount of time in between times you can spring this joke?
-fragbait
I welcome our new simian overlords? Not simbian, you pervs. I can see the evolution picture now....apes to man to apes again (or at least the hunched big arm posture because of the screens, assuming proliferation in the future).
(I like parenthesis) or "quotes".
-fragbait
The key thing is this book is illustrated. Often, I'd rather see the snippet and the picture of what it would do rather than read the official spec. That isn't to say that the spec shouldn't be read. Saying that anyone wanting to learn CSS should start with the W3C spec is like referring someone who wants to learn C to the BNF describing the C language.
Start out being a student then head to becoming the master. If you communicate with others in the most abstract way (W3C spec, even with its examples), then they won't want to communicate with you no matter how smart you are.
-fragbait
What about it are you reviewing? Is it the layout? Is it how it has been styled (colors, fonts, etc.)? Is it all of this? What is your design process on the front end? Do you create "wire frames" while designing the application? Is this a web application?
-fragbait
http://news.bbc.co.uk/2/hi/science/nature/7519723.stm
Good (personal preference, rather):
- braces on separate lines
- white space after parenthesis
- white space between operators
- white space after commas
- white space between ideas
if( something == something_else )
{
arg1 = argx + argn;
idea1( arg1, arg2, arg3 );
argz = argy + argg;
idea2( argz );
}
My reasoning for this is legibility. I find that those that don't do this tend to write "wall-o-text" code, e.g.
if(something==something_else){
arg1=argx+argn;
idea1(arg1,arg2,arg3);
argz=argy+argg;
idea2(argz);
}
I just think the white space makes the code easier to read, especially in the absence of comments or function/variable naming standards. Think of the ideas like paragraphs.
Another two good ones are all caps on CONSTANTS and constants on the left of a comparison, e.g. CONSTANT == var, to catch any assignment typos.
Bad (or silly):
- line length restrictions
I've just never found this one useful. Usually, the reason for it is for printing, more so for older printers that would truncate past 80 characters.
- endless( arg1 ).calls( arg2 ).strung( arg3 ).together( arg4 ).off( arg5 ).a( arg6 ).variable();
I'm on the fence on this one. Sure, I see the value of less lines, but wow it is hard to get the idea out, especially in the absence of comments.
I think these questions on slashdot are like hoping your 1000 monkeys will eventually create Shakespeare. I hope you like reading.....
-fragbait
My first thought was "Wow, your bandwidth is precious and you waste it on posting to Ask Slashdot?" Sure, there could be someone here with extensive knowledge and experience with network infrastructure that communicates with satellites. Regardless, it is still like asking someone who just stayed at a Holiday Inn last night (or that just read a magazine article about it, if you haven't seen the Holiday Inn commercials).
There is going to be way to many worthless posts here to filter through. I hope the mod system helps you out a bit. Perhaps even modding down this post....
-fragbait
I don't know if I'd really call this a dupe because I think all the links in this post were AT the other article instead of IN the slashdot post.
-fragbait
Sexual Harrassment
-fragbait
Granted, there are times where quality will win, e.g. World of Warcraft. The challenge here then becomes maintaining a frequent enough release schedule without compromising the quality or boring your uers.
-fragbait
+fragbait
...because I'm alergic to cats. ...because YOU are the pet in the relationship.
-fragbait