+ 1
can i work as a freelancer ..
i m learning Python..i wanna how much deep and what other things i need to learn to work as a freelancer
4 Answers
+ 2
- Communication. If you're working as a freelancer, communication is very important. You'll have to communicate with your client often, and how you communicate not only affects you ability to complete the task, but you also affect the client in a positive/negative way, which could impact this job and future jobs with them. When you get a client, most often they don't give you the full story, so you'll have to squeeze all of the specifications out of them by obtaining info from them and asking them questions. Nothing worse than finishing a program just to have a client say, "Well, actually I don't want this that and this, but I do what that this and that even though we didn't even talk about it."
- LAW. Understand the laws and regulations for wherever you're working. Know your rights. Most importantly, GET EVERYTHING IN WRITING. Make sure there is a very clear understanding of what's expected from them and from yourself. How are you getting paid? What's the terms? Hourly or a lump sum upon completion? etc... In the business world, never take someones word on something unless their word is on paper. If you have to sue, you'll already have everything on your side taken care of and you'll be ready.
- OS Systems. Ensure that you knowledge upon the various systems is up to par. If a client is asking you to develop something on a particular system, will you be equipped to tackle that? If not, you need to educate yourself further on Systems so you can be prepared for any of the mainstream systems you'll be working on. As well, you'll be able to handle certain expectations. For example, Apple users have different expectations than a Windows user does because they're each use to their own relative systems. So if you're making an interface, are you going to create a Window style interface for an Apple user or are you going to create an Apple style interface for them?
(running out of chars, will continue in another post)
+ 2
- SQL. Depending upon the project, you may have to interact with their database or do some sort of database management/programming. As such, you need to already be educated on databases and how to communicate with them properly. Chances are you'll have to do something with a database these days. As well, you need to ensure you properly secure what you're doing so that you're protecting your client also.
- Networking. Most things are online these days, which will probably include the stuff you're freelancing. As such, you need to have a good understand of networking and how everything with the net operates. This will help you create the networked programs you'll end up creating, and also help you properly secure them as best as you can from the application layer.
- Design. Functionality is an amazing thing!!!!!!!!!!!!!........that quickly gets overshadowed by poor HCI (human-computer interface) design. More important than the functionality of your code is the HCI of your code, its design and means of interfacing with the user. Everyone has expectations of how things should work and those expectations change over time. For example, I expect for the computer to put a red line under words I misspell and then help me spell it correctly. I'm bothered by systems that don't have that since at this point in history it's a common expectation. As well, the general look of your program often matters to a client and they want something that's concise about its function, not hard on the eyes, and allows them to complete their tasks as efficiently and quickly as possible. People should be able to easily jump into the program and get busy using it. Most people that use your software won't be technical people, so don't assume they're anywhere near the same IT knowledge as yourself, because often they're not.
+ 2
Okay, this is actually turning into a longer post than I was expecting. lol Progress your knowledge of Python as far as you can and spend time EVERY day learning something new with it or furthering your understanding of something you didn't understand as well. Seek out as many resources as you can on it and use them to further yourself. Learn all of the advanced stuff as well.
Also, documentation and commenting is very important with your code too. Chances are someone else will have to edit/fix/change your code at some point and that'll help them out greatly. As well, it shows your level of professionalism, which only helps you to obtain further jobs later.
Just like most business, if you do a good job, who do you think they'll call when they need further assistance down the road? Hopefully you. The way you treat your customers and the way you treat your work shows up in all kinds of ways later on. As I was told when I was a kid, it doesn't matter what you end up doing in life, but whatever you find yourself doing, be the best you can be at it. I don't care if you're a garbage collector, be the best garbage collector out there. The point is to take integrity in all of your work that you do and always give it your best.
Anyways, best of luck to you!
Oh yea, one last thing before I leave. When possible, keep your code as modular as you possible can. As you continue to freelance, a lot of your code can be reused to create new things, which saves a LOT of time and helps get you money quicker. Over time you may even end up creating your own suite of software that you can market out to businesses.
Take care!
0
thnx ur replies tense me up at first...but when i went all through them line by line ..
it answerd almost all my question u really been a great help thnx again..and one last thing i just followed to ensure ur help in future...