Jan 27

I want to be a computer programmer so I am going to need a good computer to work with me. I don’t know whether to get an iMac , Alienware or hp. What computer is best to do programming or even hacking. I want speed with my computer and not have to wait for loading. Thx

Well, an Apple most definitely wouldn’t be it. HP is dull (it’s what I use at w-o-r-k) but Alienware is pretty cool. Well, Dr Sheldon Cooper has one!!

I’m phrasing this in sort of a ridiculous way, but, seriously: Apple is definitely out. You might as well have ‘Graphic Designer’ or ‘N00b’ tattooed on your forehead. HP and Alienware are both viable options, although I’d hate to spend money on Windows –which is why I always assemble my own computers.

However, if I had to go for either HP or Alienware, it’d be the latter. The fact that Dr Sheldon Cooper has one is a contributing factor, but not the only one!

Jan 22

I’ve heard that you have to be really smart to do well and that it is a major gpa killer. Computer programming is a requirement for many science majors.

Computer programming is a craft. If you work at it it is straightforward and well, easy. You can even go pretty far without much calculus (or any but you will be looking at some no matter what you study). If you are not prepared to work at it it is a gpa killer but you probably should look at a different major or school.

Jan 15

There are blogs out there saying that it’s important for the historian of the digital age to get used to data mining and being able to program. I’ve yet to see a Bachelor’s program that requires all history majors to take a computer programming or advanced statistics class. There’s even a book out there that trains historians in the Python language.

The Connected Past: people, networks and complexity in archaeology and history

Over the past decade ‘network’ has become a buzz-word in many disciplines, including archaeology and history. Scholars in both disciplines have begun to explore the idea of complex networks in their efforts to understand social relationships in the past as well as technical relationships in their data, using methodologies drawn from complex network models devised by sociologists and physicists such as Duncan Watts and Albert-László Barabási. These recent developments in network analysis are based on a long tradition of work in many disciplines, including sociology, mathematics and physics, but with the increasing ubiquity of powerful computing technology across the academic spectrum, ‘network’ perspectives and methodologies are now becoming understood and used more broadly throughout the sciences and humanities.

The often large and complex datasets common in archaeology and history have stimulated the use of various techniques from network analysis as a tool for exploring these data, and such applications are already proving to be innovative and fruitful approaches to topics such as the transmission of ideas and technologies, the movements of people, objects and belief systems, interregional interactions and maritime connectivity. This growing interest is reflected in the increasing number of conferences on network analysis we have seen in these disciplines, including ‘Networks in the Greek World’ in Rethymnon, Crete (2006), ‘Communities and Networks in the Ancient Greek World’ held in Dublin (2009), a session at the Society for American Archaeology (2010), and a session at Computer Applications and Quantitative Methods in Archaeology (CAA) Beijing (2011).

These meetings have resulted in original archaeological and historical applications of network analysis published in collected volumes and journal papers, and clearly attest to its potential. However, the adoption of network techniques within archaeology and history remains surprisingly limited. Existing applications have not yet tapped into the full potential of a network perspective. The nature of historical and archaeological data as indirect and fundamentally fragmentary reflections of past dynamic processes certainly presents network analysts with a challenge, but one that promises to allow archaeologists and historians to make valuable contributions to the “new” science of networks, especially as regards the exploration of temporal change in networks over supra-generational and potentially evolutionary timeframes.

This conference will provide a platform for pioneering, multidisciplinary collaborative work in the field of network science. It aims to bring together the disparate international community of scholars working to develop network-based approaches and their application to the past and to provide a forum for the discussion of the most recent applications of the techniques, in order to ask what has been successful or unsuccessful, to foster cross-disciplinary collaborations and cooperation, and to stimulate debate about the application of network science within the disciplines of archaeology and history in particular, but also more broadly across the entire field.

Conference objectives:
■To provide a forum for the presentation and debate of multidisciplinary network-based research and debate the ramifications of applying network-based perspectives and methodologies to archaeological and historical data
■To establish a group of academics using network-based approaches to archaeology, history and allied disciplines
■To foster cross-disciplinary dialogue and collaborative work aimed at integrating analytical frameworks for understanding complex networks and their application to historical and archaeological problems.
■To stimulate debate about the theory and application of network analysis within archaeology and history and the relevance of this work for the continued development of network theory in other disciplines.

Dec 29

i am currently taking my basics in college but am planning on majoring in computer science. I dont know much about programming but i want to learn. What books are good to read in order to learn more about computer programming? what websites will help me more? any information will be helpful thanks.

The right way to learn, in my humble opinion, is python. You learn all the concepts- good style, object orientation, documentation, organization, writing re-useable code, using an existing code base instead of re-inventing the wheel- automatically as you learn the language. The only element that’s missing from the language is "switch" constructs, but you can often manage the exact same data structure with dictionaries.

Plus, as a beginner, it’s frustrating writing stuff that only reads and writes stuff out to the console, isn’t it? With python, you’ll be learning how to make "real" programs with a GUI pretty early on with Tcl/Tk.

I know a lot of that sounded like jargon, but python is a really, really easy language to learn for total beginners. And it’s powerful enough that you’ll keep using it long after you’ve got ten languages under your belt. Here’s enough to get you started.

Start here. It’s even got a cartoon :) http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-189-a-gentle-introduction-to-programming-using-python-january-iap-2008/

You want to click "Lecture notes", then click the Session 1 notes pdf, it’ll walk you through step by step installing python and writing your first python program, then day by day go through the rest of the lecture series, and when you think you’re hot stuff give yourself the exams.

Then once you know your stuff, go here to make "real" programs,
http://python.about.com/od/advancedpython/ss/tkinter_intro_10.htm

Annnnnd once you realize how cool and powerful those console-based programs you started with really are, you can go here to get good with those,
http://docs.python.org/tutorial/introduction.html

That’s enough to go from rank beginner to expert in a couple weeks. Enjoy!

Nov 27

I have a 9 year old son with high functioning Autism. He is a smart kid but hard to teach the conventional way. I really want him to get into computer field. I am interested in finding out what should I do or what route should I take to teach him computer programming.

I think it is safe to say that most (good) programmers are self taught. Teaching him how to find resources that he can learn from (by going to the library, searching the Web, asking questions in IRC channels and news groups, etc.) is a fairly important skill that you should focus on teaching him. Once he has that skill, he’ll be able to find the resources he needs to become a good programmer, if he is interested in programming.

Oct 24

Yeah I want to learn computer programming and I’ve stated teaching myself Python but I’m not sure if thats the best program to start out on or not. So yeah plz help me ;)
This question is asked quite a bit and the majority of people answer with a C language. There are definite benefits from learning c / c++ first due to the syntax being similar to java and because it is so widely used, but I would still vouch for Python as the best language for someone who has no prior programming experience.

The cons of Python are pretty clear:
Unless you’re an avid unix/linux user, you aren’t going to run into it very often. (note that you can use Python on Windows)
The syntax isn’t all that similar to other languages.
It’s not used as frequently as c / c++.
It’s more resource intensive than c / c++.

The nice part about python is that it’s an easy to learn language. You only need to take in a few concepts at a time, and having experience with the general concepts an OO language like Python will help you in learning another OO language like c or c++.

I like to use the ‘hello world’ example to make the point. Here is ‘hello world’ in c++:
—-
#include <iostream>
using namespace std;

int main()
{
cout << ‘hello world’ << endl;
return 0;
}
—-
In this simple program, there are several concepts that you would need to understand. like #include (and certain compilers have mandatory includes which can be problematic if you are new). You need to be aware of namespaces, functions, cout, endl, strings, returns, bracket and semicolon usage, etc. It’s alot to take in if you have never dealt with it before. Also, the difficult syntax results in poor readability to the new user, which can result in bad programming habits like excessive nesting and overly complex implementations. As a final note on c++, you will have to put up with the nuisances of forward calling or the painstaking debugging the first time you learn about / experience overflowing buffers and the way c++ rounds numbers.

Now for ‘hello world’ in Python:
—-
print ‘hello world’
—-
That’s much less of an eyesore. There are 2 concepts: 1) the print command, and 2) strings. Plus, even if you had absolutely no knowledge of Python, you have an idea of what this program actually does. Readability is a major pro.

====
In all, I’d at least take a look at c / c++. If you have trouble with it or if you simply have time and want to learn in more casual sessions, Python is a great choice.

Oct 16

I am going to school for computer programming and specializing in java script. I am also learning Arabic. I just want to know if knowing Arabic is helpful in the computer world. If it isn’t what other languages are compatible?

The arabic language matters to about 22% of the world’s population. There’s a lot of lost science and other books of knowledge that were written in arabic (due to wear and tear, computer programs may be able to decipher the missing words ) . Other uses of arabic are for design purposes (like company names written in arabic) and also, the arabic style of writing seems very artistic and of a flow-type, which could make it a base for logo design. I can think of many other uses, but a language combined with programming isnt always the greatest option (unless you’re a genius that has a mathematical need for a language combined with programming )

Oct 11

I assume that those would be two separate fields of study, programming being writing lines of program to create things in a computer and mechanics being the how of what is happening physically in a computer. I don’t know if mechanics and programming are the right terminology, but what I have described is what I would like to learn. I’m a complete beginner in those concepts, and would like advise on what good resources to begin studying those fields are, mainly books, but web links would be appreciated too… although I can find those myself. Thanks a lot.

Instead of mechanics you can say computer architecture or hardware. I used this book http://williamstallings.com/COA5e.html as part of my computer science degree and explains the whole architecture of a computer and how it works, it’s a very good book. And for programming you can use you any introductory book for the language which you want to learn first. I suggest you learn C++ or Java first. You can use this book for Java, http://www.amazon.com/Introduction-Programming-Java-Problem-Approach/dp/0073047023/ref=sr_1_10?ie=UTF8&qid=1309873920&sr=8-10 . Hope it helps.

Sep 8

I will be starting classes this semester to get a vocational degree in computer programming. I was hoping to get a bachelors or associates, but the college does not offer the course with those degrees. Anyway, besides programming, what other jobs could I possibly get with this degree? It may be a dumb question, but I was hoping for some insight. I am taking this course mainly because I enjoy working with computers, and I’m hoping to turn it into a career.

Most people start out as computer operators, or entry level programmers. After that, who knows - dba (data base admin), systems analyst, project manager, network engineer, etc. There are just so many directions to go.

Aug 12

I’m a complete beginner in computer programming. I do not have any experience nor knowledge of computer programming. I’m just wondering what language I should start to learn. Should I first learn liberty basic, then go to c++? Or should I first learn c++? Any recommendations?

Basic and its derivatives are not the most useful languages around. They have limited applications but tend not to show up in serious programming. Real application development is more often done with something like Java or C++.

C++ is a difficult language to start with. It’s kind of like learning how to drive by first opening up the hood of a car and figuring out how the gear shift attaches to the transmission: Theoretically it can work, but unless you’re a masochist you probably want a shallower learning curve. Java is an okay language to start with, although if you want something really easy you can go with Javascript (which is NOT the same thing as Java). All three of these languages have a C-style syntax, unlike Basic.

« Previous Entries