CAREERS IN GENERAL
This page, which is not specific to me, might be useful in your career.
This page deals with careers in general and careers specifically in computer science but not careers specifically in other areas.
TOPICS FOR A CAREER IN ANY FIELD
RESOURCES
STORIES AND QUOTES
TOPICS IN COMPUTER SCIENCE
THE JAVA PROGRAMMING LANGUAGE
SEARCHING THE RESEARCH LITERATURE
MISCELLANEOUS TOPICS IN COMPUTER SCIENCE
Return to Gary Sockut's home page.
TOPICS FOR A CAREER IN ANY FIELD
This section's information is, of course, just a fraction of the
information that you might find useful for work.
RESOURCES:
Many career resources, organized below by their topics, are available.
I do
not
make any guarantees about the resources listed here.
I found some of them, and viewers of earlier versions of
this web site suggested some of them.
Overall information:
-
Money,
the
Wall Street Journal,
organizations' web sites, and organizations' e-mails
often include career-related information.
-
Many universities have career advice on their web sites.
Typically, the advice is free, even for non-alumni.
Some
advice is oriented toward current students who will graduate soon,
but much advice also applies to people with more work experience.
-
A career counselor can customize his/her help toward your goals.
Here are ways to find a career counselor:
-
Sites for information about careers in general include
http://www.learnhowtobecome.org/
and
https://www.moneygeek.com/careers/.
-
For information about careers in computer science, one site is
http://www.computerscienceonline.org/.
Organizations:
Networking:
-
Your friends, relatives, and past or present coworkers are networking contacts.
-
A college or university that you attended might have an alumni directory.
Many but not all alumni are happy to network with a fellow alumnus whom they don't know.
-
If you are a member of an organization, you can search its membership directory.
-
Probably many people have given you their business cards.
-
You can contact relevant professors whom you know
(not necessarily at colleges or universities that you attended).
-
Many organizations (see above) have many events.
-
There are web sites for business-oriented networking.
For example,
LinkedIn
is a well-known resource that has many participants and many groups.
You can search for companies, people, and job openings.
You will probably find many people whom you know, many fellow alumni, and many people at the companies that interest you.
Some people do career-related networking on social networking sites that are not specifically business-oriented, e.g.,
Facebook.
-
Some people meet many people at many events.
Therefore, if you send somebody a connection request
on a networking site,
I suggest including a note to remind the person how you met,
if it is not obvious.
Otherwise,
the person might wonder who you are and reject the request.
-
Your geographic area might have networking groups.
For example,
Meetup
includes many networking groups on work topics and non-work topics;
even a group that is not specifically work-oriented might produce leads.
Some Meetup groups are user groups.
If you search Meetup for words that relate to your profession,
you might find many groups.
In Massachusetts,
WIND
and
Acton Networkers
can be helpful for job-hunters.
-
There are many
Google groups
and
Yahoo groups.
There are groups for various geographic areas, various interests,
and people affiliated with various universities.
Education:
-
You can attend events of organizations (see above).
-
In the Boston area, the
Professional Development Collaborative
offers courses on a variety of topics.
-
Online education is available from some organizations (again see above),
from many schools, e.g., those listed in
Accredited Schools Online,
Affordable Colleges Online,
College Degrees Online,
and
Computer Science Master Degrees,
Master's in Data Science,
and from some commercial sites, e.g.,
SmartScholar
for several fields of study and
W3Schools
for web-related technologies.
Job-hunting:
-
All the resource topics above are potentially applicable
to a variety of career-related goals, including job-hunting.
Here are some resources
that are specific to the goal of job-hunting.
-
There are
employment web sites.
These include
indeed (which aggregates listings from other sources),
LinkedIn,
and some professional associations.
-
Advice on many topics in employment is available from
Acton Networkers,
the Undercover Recruiter,
JobHero,
and
Zippia.
-
One book on job-hunting is
C. Shapiro,
What Does Somebody Have to Do to Get a Job Around Here?
(subtitled
44 Insider Secrets that will Get You Hired),
St. Martin's Press.
The author, a former human resources executive, gives an insider's advice
on hiring criteria, résumés, interviewing, negotiating, and other topics.
Other career-related topics:
-
For working in a large corporation, this book might help:
C. Shapiro,
Corporate Confidential:
50 Secrets Your Company Doesn't Want You to Know -- and What to Do About Them,
St. Martin's Press.
The author, a former human resources executive, gives an insider's advice on corporate employment.
-
This book might help in negotiation:
R. Fisher,
W. L. Ury,
and
B. Patton,
Getting to Yes: Negotiating Agreement Without Giving In,
Penguin Books.
-
To find information about a company (to supplement what you find
on the company's own web site and the company's
LinkedIn
description), use these resources:
Zoom Information,
Hoover's,
Google Finance,
Yahoo Finance,
Glassdoor,
and
Wikipedia.
STORIES AND QUOTES:
Many things can be difficult to predict.
The economist
John Kenneth Galbraith
is
quoted
as saying “The only function of economic forecasting is to make astrology look respectable.”
Finding the reason for an observed fact can be tricky.
I heard about somebody who, after getting a new keyboard, could log in when sitting but could not log in when standing.
The reason was eventually found to be the manufacturer's inadvertent exchanging of the labels of two keys.
When sitting, the person used
touch typing
and therefore pressed the correct keys.
When standing, the person looked at the labels and therefore pressed the incorrect keys.
Sometimes a seemingly simple action has unintended consequences, especially in an interconnected system.
I quote one publication of the
World Health Organization
(WHO):
“This story began in the late 1950s when WHO carried out
extensive programs to eradicate mosquitoes in Borneo by spraying the village areas with
DDT.
Not long after, the palm-thatched roofs of the village houses began to collapse:
a moth larva which fed on the palm fronds had increased because a predatory fly,
which ordinarily kept the larva at low levels, had been annihilated by the DDT.
The contaminated flies were eaten by lizards which were eaten by housecats which also died.
As a result, rats began to invade the dwellings, posing a serious threat of diseases.
To solve the problem, WHO and Singapore's Royal Air Force packed cats into
perforated containers and dropped them into the villages by parachute.
Thus the story of Operation Cat Drop was born.
It attracted attention and controversy
because a well-meaning action had resulted in the unbalancing of a delicate ecological equilibrium,
but it lived on because of the intriguing image of cats plummeting into the Borneo jungle by parachute.”
In designing a written or oral explanation of something (e.g., a computer language),
I recommend explaining the simple things before explaining the complicated things.
For example, some explanations of the
Unix
operating system illustrate a Unix
pipe
(whose syntax is “|”) via an example like “cat myfile | lpr”
without previously
explaining “cat” and “lpr” individually.
The “cat” concatenates one or more operands (just “myfile” in this case),
“lpr” prints its operand on a printer,
and “|” feeds the output of one command (cat) into the input of another command (lpr).
Some people who read or hear such an explanation can get the
incorrect
impression that “cat myfile | lpr” is the simplest way to print a file.
However, the simplest way is really “lpr myfile.”
Explaining “cat” and “lpr” individually
before
explaining their combination can avoid giving the incorrect impression.
In designing an explanation, there can be a trade-off between thoroughness and conciseness.
I heard a presentation by Terry Smith called
“The 10 Commandments (More or Less) of Successful Presentations.”
He gives an example to illustrate the need for conciseness:
“A diminutive immature specimen of a ruminant mammal of the genus
Ovis
was under the exclusive dominion and control of
Mary.”
It is always important to consider the users.
I quote this example from the “Error Messages” section of
B. Shneiderman,
Designing the User Interface: Strategies for Effective Human-Computer Interaction,
Addison-Wesley:
“The phone company, long used to dealing with nontechnical users, offers this tolerant message:
“We're sorry, but we were unable to complete your call as dialed.
Please hang up, check your number, or consult the operator for assistance.”
They take the blame and offer constructive guidance for what do to.
A thoughtless programmer might have generated:
Illegal phone number.
Call aborted.
Error number 583-2R6.9.
Consult your user manual for further information.”
I heard a story about
Gerd Binnig
and
Heinrich Rohrer,
who invented the
scanning tunneling microscope.
When they told their colleagues about their proposed research, their colleagues said, “You're crazy!
It will never work.
But if it does work, you will win a
Nobel Prize.”
The colleagues were partially correct; after it was shown to work, they won a Nobel Prize
(
physics, 1986).
Sometimes it is worthwhile to do what some people consider crazy.
People from different cultures often have different customs.
A friend worked for an American company that celebrated major product releases by giving employees
T-shirts
containing a message about the release.
He once visited an engineering lab that the company had in Germany.
After work one day, he and his German colleagues went out for drinks.
After a few beers, one colleague said “We love you Americans, but why do you keep sending us underwear?”
TOPICS IN COMPUTER SCIENCE
THE JAVA PROGRAMMING LANGUAGE:
I like this book:
D. Lowe
and
B. Burd,
Java All-In-One Desk Reference For Dummies, 2nd Edition,
Wiley Publishing, 2007.
It is thorough (882 pages) and easy to understand.
I can usually find other Java subjects (not found in the book) on Oracle's web site or elsewhere on the web.
The web site provides the
full specification of the language,
a
searchable tutorial,
and other things.
In early 2017,
I wanted to refresh my memory on Java programming,
and I wanted to have some fun doing it.
So I wrote a
Roman numeral
desk calculator.
Instead of 2 plus 2 is 4, II plus II is IV.
It supports addition, subtraction, multiplication, division,
exponentiation, and parenthesized expressions.
I have uploaded the
source file.
I also contributed it to the GitHub repository as open-source software, in my
games repository.
So I have satisfied the world's most important need!
☺
SEARCHING THE RESEARCH LITERATURE:
I have used mainly three free web sites.
For each site, this table lists the site's name, the areas covered,
and the number of publications that the site found in November 2007 when I searched for publications that I have authored:
Of the 16 publications that Google found, 8 were in both ACM and DBLP,
3 were just in ACM, 1 was just in DBLP, and 4 were in neither.
DBLP also found 1 publication that was in neither Google nor ACM.
Google found all my patents, but ACM and DBLP did not find any.
When analyzing this comparison, remember that this was a one-time test that involved only one search criterion
(authorship by me); different search criteria can produce different comparisons
(
YMMV).
Also remember that the sites' capabilities can evolve.
Here are a few more details of the sites:
-
All three include facilities for advanced search.
ACM's advanced search
seems to be the most powerful;
it even lets you search by authors' affiliations (companies or schools).
-
ACM and DBLP also let you browse the tables of contents of journals and conference proceedings.
-
If you search DBLP by author, DBLP sorts the displayed publications by year.
-
Google (for some publications), ACM, and DBLP include
BibTeX
tags for publications,
which will save you time if you want to reference the publications in a document that you are preparing with
LaTeX.
You can also search for US patents through the
Patent and Trademark Office.
There are web sites for producing a pdf version of a patent; one such site is
pat2pdf.org.
Many authors' web sites list more publications than any of the search sites list for those authors.
Besides using a search engine
(
Google,
Bing,
Yahoo,
etc.), here are other ways to find an author's web site:
-
In the ACM Guide, if you follow an author link from the page for one of that author's publications,
the Guide also displays a link to the author's home page
(if the author has an ACM web account and has sent the URL to ACM).
The page that results from searching the Guide by author will
not
display the home page link; you must follow an author link from a publication page.
-
If you search DBLP by author,
DBLP also displays a link to the author's home page (if the author has sent the URL to DBLP).
MISCELLANEOUS TOPICS IN COMPUTER SCIENCE:
There is a
blog on web 3.0 and the semantic web.
Forward to Leisure.
Return to Gary Sockut's home page.