If you have more than one Skype account – say one for business and another for personal use – you can run two Skype applications at the same time! Provided you have Skype version 4 or better. The following “tip” applies only to Windows…
Step 1: Go to the location to where you installed Skype. For example:
C:\Program Files\Skype\Phone
Step 2: Right-click on the Skype.exe icon and select “Send to” -> “Desktop (as shortcut)” to create a new shortcut to it on your Desktop.
Step 3: Now go to your Desktop and right-click on the newly created shortcut. Select “Properties”.
Step 4: Append the following to the “Target:” text field without changing the existing text:
/secondary
Enjoy
An interesting resource with many free books about programming and more..
20. That’s weird….
19. It’s never done that before.
18. It worked yesterday.
17. How is that possible?
16. It must be a hardware problem.
15. What did you type in wrong to get it to crash?
14. There is something funky in your data. OR It’s a data problem, not a program problem.
13. I haven’t touched that module in weeks!
12. You must have the wrong version.
11. It’s just some unlucky coincidence.
10. I can’t test everything!
9. THIS can’t be the source of THAT.
8. It works, but it hasn’t been tested.
7. Somebody must have changed my code.
6. Did you check for a virus on your system?
5. Even though it doesn’t work, how does it feel?
4. You can’t use that version on your system.
3. Why do you want to do it that way?
2. Where were you when the program blew up?
And the Number One Thing Programmers Say When Their Programs Don’t Work:
1. It works on my machine.
Recently I came quite interesting Wikipedia article about Software Engineering Body of Knowledge.
Also, additionally, I came across a list of 100 Interview questions for software developer. This list covers most of the knowledge areas as defined by the Software Engineering Body of Knowledge.
Requirements
- Can you name a number of non-functional (or quality) requirements?
- What is your advice when a customer wants high performance, high usability and high security?
- Can you name a number of different techniques for specifying requirements? What works best in which case?
- What is requirements tracing? What is backward tracing vs. forward tracing?
- Which tools do you like to use for keeping track of requirements?
- How do you treat changing requirements? Are they good or bad? Why?
- How do you search and find requirements? What are possible sources?
- How do you prioritize requirements? Do you know different techniques?
- Can you name the responsibilities of the user, the customer and the developer in the requirements process?
- What do you do with requirements that are incomplete or incomprehensible?
Functional Design
- What are metaphors used for in functional design? Can you name some successful examples?
- How can you reduce the user’s perception of waiting when some functions take a lot of time?
- Which controls would you use when a user must select multiple items from a big list, in a minimal amount of space?
- Can you name different measures to guarantee correctness of data entry?
- Can you name different techniques for prototyping an application?
- Can you name examples of how an application can anticipate user behavior?
- Can you name different ways of designing access to a large and complex list of features?
- How would you design editing twenty fields for a list of 10 items? And editing 3 fields for a list of 1000 items?
- What is the problem of using different colors when highlighting pieces of a text?
- Can you name some limitations of a web environment vs. a Windows environment?
Technical Design
- What do low coupling and high cohesion mean? What does the principle of encapsulation mean?
- How do you manage conflicts in a web application when different people are editing the same data?
- Do you know about design patterns? Which design patterns have you used, and in what situations?
- Do you know what a stateless business layer is? Where do long-running transactions fit into that picture?
- What kinds of diagrams have you used in designing parts of an architecture, or a technical design?
- Can you name the different tiers and responsibilities in an N-tier architecture?
- Can you name different measures to guarantee correctness and robustness of data in an architecture?
- Can you name any differences between object-oriented design and component-based design?
- How would you model user authorization, user profiles and permissions in a database?
- How would you model the animal kingdom (with species and their behavior) as a class system?
Construction
- How do you make sure that your code can handle different kinds of error situations?
- Can you explain what Test-Driven Development is? Can you name some principles of Extreme Programming?
- What do you care about most when reviewing somebody else’s code?
- When do you use an abstract class and when do you use an interface?
- Apart from the IDE, which other favorite tools do you use that you think are essential to you?
- How do you make sure that your code is both safe and fast?
- When do you use polymorphism and when do you use delegates?
- When would you use a class with static members and when would you use a Singleton class?
- Can you name examples of anticipating changing requirements in your code?
- Can you describe the process you use for writing a piece of code, from requirements to delivery?
Algorithms
- How do you find out if a number is a power of 2? And how do you know if it is an odd number?
- How do you find the middle item in a linked list?
- How would you change the format of all the phone numbers in 10,000 static html web pages?
- Can you name an example of a recursive solution that you created?
- Which is faster: finding an item in a hashtable or in a sorted list?
- What is the last thing you learned about algorithms from a book, magazine or web site?
- How would you write a function to reverse a string? And can you do that without a temporary string?
- What type of language do you prefer for writing complex algorithms?
- In an array with integers between 1 and 1,000,000 one value is in the array twice. How do you determine which one?
- Do you know about the Traveling Salesman Problem?
Data Structures
- How would you implement the structure of the London underground in a computer’s memory?
- How would you store the value of a color in a database, as efficiently as possible?
- What is the difference between a queue and a stack?
- What is the difference between storing data on the heap vs. on the stack?
- How would you store a vector in N dimensions in a datatable?
- What type of language do you prefer for writing complex data structures?
- What is the number 21 in binary format? And in hex?
- What is the last thing you learned about data structures from a book, magazine or web site?
- How would you store the results of a soccer/football competition (with teams and scores) in an XML document?
- Can you name some different text file formats for storing unicode characters?
Testing
- Do you know what a regression test is? How do you verify that new changes have not broken existing features?
- How can you implement unit testing when there are dependencies between a business layer and a data layer?
- Which tools are essential to you for testing the quality of your code?
- What types of problems have you encountered most often in your products after deployment?
- Do you know what code coverage is? What types of code coverage are there?
- Do you know the difference between functional testing and exploratory testing? How would you test a web site?
- What is the difference between a test suite, a test case and a test plan? How would you organize testing?
- What kind of tests would you include for a smoke test of an ecommerce web site?
- What can you do reduce the chance that a customer finds things that he doesn’t like during acceptance testing?
- Can you tell me something that you have learned about testing and quality assurance in the last year?
Maintenance
- What kind of tools are important to you for monitoring a product during maintenance?
- What is important when updating a product that is in production and is being used?
- How do you find an error in a large file with code that you cannot step through?
- How can you make sure that changes in code will not affect any other parts of the product?
- How do you create technical documentation for your products?
- What measures have you taken to make your software products more easily maintainable?
- How can you debug a system in a production environment, while it is being used?
- Do you know what load balancing is? Can you name different types of load balancing?
- Can you name reasons why maintenance of software is the biggest/most expensive part of an application’s life cycle?
- What is the difference between re-engineering and reverse engineering?
Configuration Management
- Do you know what a baseline is in configuration management? How do you freeze an important moment in a project?
- Which items do you normally place under version control?
- How can you make sure that team members know who changed what in a software project?
- Do you know the differences between tags and branches? When do you use which?
- How would you manage changes to technical documentation, like the architecture of a product?
- Which tools do you need to manage the state of all digital information in a project? Which tools do you like best?
- How do you deal with changes that a customer wants in a released product?
- Are there differences in managing versions and releases?
- What is the difference between managing changes in text files vs. managing changes in binary files?
- How would you treat simultaneous development of multiple RfC’s or increments and maintenance issues?
Project Management
- How many of the three variables scope, time and cost can be fixed by the customer?
- Who should make estimates for the effort of a project? Who is allowed to set the deadline?
- Do you prefer minimization of the number of releases or minimization of the amount of work-in-progress?
- Which kind of diagrams do you use to track progress in a project?
- What is the difference between an iteration and an increment?
- Can you explain the practice of risk management? How should risks be managed?
- Do you prefer a work breakdown structure or a rolling wave planning?
- What do you need to be able to determine if a project is on time and within budget?
- Can you name some differences between DSDM, Prince2 and Scrum?
- How do you agree on scope and time with the customer, when the customer wants too much?
Recently I found a great article about being too nice at work..
Here is the original link: The danger of being too nice at work.
and the article content:
If you’re a nice person, you probably think that being nice works to your advantage in the office. After all, how could it be any other way? Genuinely nice people are well liked. They’re generally easy to work with. They care about others and tend to have good values. In a fair and just world, that sort of behavior should be rewarded. Right?
Not necessarily. Too often, nice, competent people get passed up for promotions. Instead, the plum job goes to the prima donna or the person who plays politics. The bonus is bestowed upon the squeaky wheel or the obnoxious go-getter. In this environment, the nice guy really does finish last. It’s frustrating because it goes against everything we were taught as a children about the Golden Rule.
What nice people may not realize is that they’re too nice, and that being too nice can seriously stymie their career growth and success, says Russ Edelman, a SharePoint consultant and co-author of the book, Nice Guys Can Get the Corner Office: Eight Strategies for Winning in Business Without Being a Jerk (Portfolio, 2008.) “The people in business who suffer from nice guy syndrome are not achieving their true potential,” he says.
The problem with being too nice, according to Edelman—who comes off as a very nice guy—is that you’re a doormat and people take advantage of you. Nice people are too concerned about pleasing others and not making waves that they don’t stand up for themselves.
Edelman cites a nice man he interviewed for his book, who was vying for an executive position. The nice man was well-respected and well-liked in his company, and had a very good shot at the job. Of course, someone else was competing for the position. When the nice man was asked in an interview about his competitor, according to Edelman the nice guy said he thought his competitor would do a fantastic job. The nice contender wound up writing a letter of recommendation for his competitor because he didn’t want to cause a stir by vying for the executive-level job, says Edelman. End result: The competitor got the job, and the nice guy remained in his spot on the corporate ladder.
“The nice guy is forever putting the oxygen mask on someone else before putting it on himself,” says Edelman.
The Cost of Nice in Business
Being too nice is not just a problem for individuals. It’s a problem for businesses, too. Employees who are too nice cost businesses time and money.
In a survey of 50 CEOs, Edelman asked about the impact of “being too nice” on their businesses. The CEOs responded by saying that being too nice cost them eight percent of their gross revenues. In other words, if the CEOs’ companies had been more aggressive, they believed they could have earned more money.
Edelman notes that managers who are too nice are reluctant to make decisions on their own. They fear hurting the feelings of anyone whom they don’t ask for feedback, so they include everyone in their decision-making. That wastes time and can lead to missed opportunities.
“The overly nice guy usually defers to others. They’re reluctant to create losers,” says Edelman. The irony is that in the process of trying to make everyone a winner, the nice guy ends up the loser.
Managers who are too nice also avoid confrontation, says Edelman. They’d rather ignore problems than address them head on. Of course, ignoring problems only makes them worse, and burying one’s head in the sand does not inspire the confidence of the manager’s team or of his superiors, adds Edelman. It only inspires their ire.
“If you appease everyone, if you fear hurting people’s feelings, you do a disserve to whatever project you’re working on, to yourself and your business,” says Edelman. “That’s where being too nice is not nice at all.”
Advice for People Who Are Too Nice
Softies need to toughen up, says Edelman. “I’m not advocating that people become jerks or SOBs,” he says, “But they need to find a balance to stay true to their nice nature while also being appropriately assertive and protecting their interests.”
The challenge, then, for nice people is to redefine what it means to be nice, says Edelman, and to understand that being nice doesn’t have to mean being a doormat. You can be nice and be assertive and deal with confrontation and set boundaries, he adds.
Here are three concepts nice people need to understand to succeed at work:
1. Business is competitive. Deal with it.
Edelman interviewed Sam DiPiazza Jr., the CEO of PricewaterhouseCoopers, for his book. DiPiazza had this to say about business, according to Edelman: “Business, whether we like it or not, includes competition. It’s challenging, aggressive and very demanding. Despite the perception of many, it can also be performed icely.”
2. Sometimes being nice isn’t very nice at all.
Edelman also spoke with the CEO of the American Cancer Society, John Seffrin, who believes that when mangers are too nice and are incapable of having honest discussions with others (such as during a performance review) for fear of hurting feelings, they’re in fact not being nice at all and they’re doing a disservice to the people they manage.
3. Confrontation is not necessarily a bad thing.
Nice people avoid confrontation because it’s uncomfortable, says Edelman. If nice people are to be more assertive, they need to understand the business value of confrontation: it allows them to solve problems. Edelman points to a strategy employed by 1-800-GOT-JUNK CEO Brian Scudamore, which Scudamore calls “race to the conflict.” The idea is, if a conflict or issue comes up, employees should race to it to get it resolved as quickly as possible. If they don’t, they’re wasting time.
1. Place a small amount of nonabrasive, liquid soap on the shiny side of the CD or DVD.
2. Using your fingertips and warm water, gently rub the soap on the disc in a circular motion.
3. Rinse the disc thoroughly and dry it using a clean, soft T-shirt or lint-free towel. Do not use paper towels or tissue paper.
4. Install the program.
The Windows icon cache is a fairly buggy creature. You can solve this in one of the following ways:
- Or increase the icon cache size. Go to HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer and add a new String Value called “Max Cached Icons”. The default value is 500 – try increasing it to 2048 (see http://support.microsoft.com/support/kb/articles/Q132/6/68.asp for more details).
- Or delete the file called ShellIconCache in your Windows directory. And reboot.
As Weinberg said, it’s always a people problem. If you aren’t working with people you like, people you respect, people that challenge and inspire you– then why not? What’s stopping you?
8 Things You Must Do Right Now to Not Choke Under Pressure
- Avoid Negative People
As soon you are faced with a challenge, be it in life, or in software development, there will be those people ready to kick you, and tell you how complicated the problem is, and how grim the situation is. Avoid them at all costs. They will only get you down. Try instead to surround yourself with winning personalities. That is people that thrive on success and positive re-enforcement. The sad reality is chances are, by succeeding, you will be setting the bar that much higher, and possibly making the “negative” people look bad. Get rid of them! If you simply can’t get rid of the negative personalities, ignore them completely! - Assess the Situation
What happened to get you into this situation? What went wrong with your game plan? Take a piece of paper (yes go old school) and draw a line through the middle of the paper. On the left side write down everything that was done incorrectly. Along the right side, write down everything that you did very well. What is the point of doing this? Your brain is going to learn exactly what to not do again, and what it should do more of. - Do Not Get Caught Up On What You Do Well
A lot of times people will fall into the trap of only doing what they do well, and not focusing on the things they do poorly. Take the list you just wrote down, and for each thing that went badly, write down what you can do to change that behaviour. See the problem is, it’s in your human nature to focus on what you do well, and ignore everything else, until it’s too late. A lot of managers can get into this habit of always pushing what they are best at, and avoiding everything else as things someone else will worry about. This is actually an untold story in management, where a lot of times, managers will stay on one area of the project, because they are most comfortable in this area, and never allow the project to move on, thus, slowing things to a crawl. Anyway I digress, this is another story. - Remove Distractions and Stay Focused
Its crunch time, and there are distractions everywhere! Other projects going on, lunch gatherings, after work events. Just as a golfer is trained to focus on the hole, and not on the water hazards and sand traps, you must do the same. If you have an office, close the door. If you don’t, make sure you have a good pair of noise isolating headphones. Make sure the music you listen to does not have words if possible. Words will only distract you. - Remain Relaxed
This is quite possibly one of the most important things to ensure you crush the competition, succeed in your journey, or finish that software project on time. I personally love to watch UFC, love playing chess, and studied martial arts for many years. One thing you could always see in the winner prior to the fight, and during the fight, is a relaxed demeanour. Remaining relaxed when you are on the 18th hole, one chip away, is the secret of champions. - Create a Plan
Once the pressure starts mounting, you will need a plan to fall back on when you are in dire straits. A plan doesn’t have to be all encompassing either, just enough to serve as a guide. You would be surprised how many people never bother to create a plan simply because they think it will take too long to do it, so they never start. You can create a plan right now in fact, in the next 5 minutes, and then build on it. You will be amazed how easy it is to do, and how much it helps. Stop reading this article in fact, and take out another sheet of paper and write - Be Prepared
If you know the pressure is building up, make sure you take the time to get prepared. Being prepared can actually reduce the feeling of stress under pressure, and help move you into the final stage of being confident and believing in yourself. If you know you will need to implement some new technology, a new function to the application, etc. Make sure you get ready! Adding a new function to the application for accounting? Go sit with them and learn their jobs as best as you can and figure out what they want to do! - Be Confident and Believe in Yourself!
You are in the position you are in because some believed in you. Be confident in your abilities. If you lose confidence, you as might as well pack it in.