Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
After reading E-myth Revisited, I realize that I can do a better job at making my company less reliant upon me... I spend a tremendous amount of time answering silly questions (silly to me, but necessary for my developers to get the job done).
I need to write a set of operating manuals for what to do in certain situations...
For instance:
How to make a build
How to write test cases
How to report status
How to fix a bug
How to handle support question A, B, C, etc...
What to do when you are stalled
What to do when the power goes out (really, I need to do this)
etc...
What are some useful, generic operating manuals that you can think of, for a software development company?And please, if you have some good, short, online versions that you know of, please post them. I would much rather use a starter manual and modify it for my needs, than start from scratch.
What about a wiki - at least then other people can start to contribute.
Otherwise they are just going to rely on you for the manuals
I disagree with the wiki. As the owner of the company -- it is your responsibility to write the manuals, or delegate it in a very controlled fashion. People should rely on you for the manuals.
Really though, back to the question. The obvious standards, coding, SQL, etc for your platform and programming languages. You'll be able to find examples of these anywhere on the internet. As for customer support, you should probably write that yourself, you know how you want your customers treated. As for test cases, again, you'd have expect your developers or testers to have a professional understanding of what needs to be done, you might indicate the acceptable minimums however.
What to do when you are stalled. That's what managers are for :-)
I think it boils down to writing the manuals that are unique to your business, and trying to steal or borrow manuals for the generic processes.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I want to write a bot for 500px.com which automatically likes pictures and follows random people. Sadly I don't have a clue where to start, are there any good tutorials or something? I googled, but could't find anything useful really!
I work at 500px. We'd really rather you didn't try to game the system, it hurts the community when you do and isn't fair to other users.
I mean, I'm a developer, I get that this might just be a curiosity thing for you. Maybe you just want to see what you can do. But maybe your efforts would be better spent, say, playing with our REST API.
But if it is that you're just trying to get more exposure, I hope that you'll reconsider your strategy. Focus your efforts instead on contributing meaningful content, engaging with your fellow users, working on your craft. When you game the system, you're advancing yourself on the backs of other photographers. The more people that engage in this sort of behaviour, the harder it becomes to find meaningful content, and over time everyone suffers.
No
Your problem is concept -- you want to write a automatic function that acts as if it is a human entity. This means that even if this is desired by the company behind the http://www.500px.com website, this does come across as something impersonating a valid human user, and as such will need to face and overcome the usual challenges of such thing as filling in online forms, logins and verification methods automatically and reliably without being detected as a 'bot .
This is potentially a very significant undertaking, and not to be underestimated. By posting this question on stack overflow you're pretty much giving away that you've very likely not got the basic skill-sets required for carrying out this task.
If this task is however in partnership or for the company behind the 500px.com website, then you will have access to very specific and first hand information about the details and website code and structure they use.
Both of the above conclusions - to me - imply that you're far below the very-probably required level of knowledge and you're going about finding that knowledge in entirely the wrong way.
Instead, find a programming language of your choice and learn it inside out and upside down, then you'll have (slightly) more chance at doing something like this.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 12 years ago.
Improve this question
Is it possible to get into legal trouble for identifying vulnerabilities in a web application even if you don't exploit them?
I have considered using tools like NetSparker on occasion to see if a site has any vulnerabilities and I'd like to contact the owner of the site to see if they'd be interested in me fixing it. I suspect that some of these people might get angry or misinterpret my intentions and I'm curious if I could get into any trouble for simply finding these security issues.
If you are looking for vulnerabilities in open source software or commercially distributed software and you are a US citizen you are protected by the 1st amendment. It is legal for you to write exploit code and do whatever you want (as long as it isn't selling it to terrorists/the mob). If you do find a flaw, report it to BugTraq and put it on your resume. I have racked up a lot of CVE numbers over the years and I actively write exploit code.
In Germany and France the laws are a bit different, the possession of "hacking tools" like exploit code or even NMAP can land you in jail. You might also be interested in the laws of full disclosure.
On the flip side, if you go around scanning people's web sties looking for vulnerabilities you are breaking the law and the FBI will investigate you. Do not look for vulnerabilities in random websites without the owners permission.
You shouldn't get into trouble but depending on how big of a prick and who gets embarrassed and who feels threatened you could easily turn into the next Adrian Lamo.
What one can get into trouble doing often comes down to what "they" can convince a judge. It's certainly possible that a company can see such an act as a genuine attack (the wrong person in the company gets the wrong idea and yells loud enough about it) and seek some kind of damages from you. Just remember that "being right" or "being reasonable" or "making sense" don't really mean much in the US legal system (assuming US here).
That said, as a developer I absolutely encourage vulnerability testing and reporting back to the developer for the product being tested. But, unfortunately, you should tread carefully.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I'm sorry if this is a duplicate, but the question search terms are pretty generic.
I work at a small(ish) development firm. I say small, but the company is actually a fair size; however, I'm only the second full-time developer, as most past work has been organized around contractors.
I'm in a position to define internal project process and policy- obvious stuff like SCM and unit-testing. Methodology is outside the scope of the document I'm putting together, but I'd really like to push us in a leaner (and maybe even Agile?) direction.
I feel like I have plenty of good practice recommendations, but not enough solid motivation to make my document the spirit guide I'd like it to be. I've separated the document into "principles" and "recommendations". Recommendations have been easy to come up with. Use SCM, strive for 1-step, regularly scheduled builds, unit test first, document as you go... Listing the principles that are supposed to be informing these recommendations, though, has been rough.
I've come up with "tools work for us; we should never work for tools" and a hazy clause aimed at our QA (which has been overly manual) that I'd like to read "tedium is the root of all evil".
I don't want to miss an opportunity with this document to give us a good in-house start and maybe even push us toward Agile. What principles am I missing?
EDIT 4/15 -
I might have been ambiguous about the scope of this document. For now, it's policy that my co-dev and I plan to follow. So far, we've been given free reign on choice of local tool, source control, etc, and the general process we follow in development (eg build, deploy, whether to use continuous integration...).
Ideally, I'd also like this document to be a model on which to base further process improvements. I'm mostly thinking QA, and maybe nudging our project management towards something lighter and iterative.
The Agile Manifesto and its principles might help with a few more ideas
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
My team does some development, but is mainly involved in supprting an existing suite of applications. We now have an imbedded tester (and another on the way). So how can I apply agile practises in what is a purely reactive situation?
You could try to use Kanban. It is more suited for such dynamic situations than Scrum. The ultimate solution would be to use Kanban for support activities and Scrum for development, but in case you spend much less than 50% of your time for development this may be not worthed (overengineering).
Even though it is purely reactive, you surely have larger requests that need to be prioritized? I am using Scrum in a support situation to help prioritizing the non-emergency work that often requires hours or days of effort. I think that Scrum in some ways fits in even better in a support situation than in development.
I would start with prioritizing the issues that come in (someone from the business end should be responsible for that), making things visible (e.g. getting them up on a task board), and improving your definition of done for each task (tests, code review, etc).
Now that you have a tester with the team, it would be a good time to start some TDD and definitely start automating a lot of your tests.
Once you have some of these basics in place, you can look at either Scrum or Kanban depending on your needs. If tasks always seem to come out of the blue, Kanban is probably more appropriate as another poster suggested.
In order to be successful with Kanban, you must make sure that you have a very solid definition of done to ensure that you maintain quality throughout. Without it, you won't see the full benefit.
I would also recommend scheduling regular retrospectives to see what is working for you and where you need to improve.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
Can anyone suggest a set of "commandments" to make everyone operate efficiently during a development project? I am looking for commandments on how Dev and QA and Management should interact. If you lookup Agile or Scrum development models they can explain peoples roles and how things work but it doesn't define a set of bylaws that protect peoples roles from each other.
Micromanagement shouldn't need to occur when rules work properly. QA should have all information they need to test and managment should define what a successful test is. Etc.
If such a set of rules existed and was known to work well, a large industry of consultants would disappear overnight. By the contrapositive, there are no "rules" that meet your qualifications.
All the roles are part of the same team, so everyone share the same goal. People collaborate, meet daily, communicating directly, preferably face-to-face.
Everything is based on trust, there is no need for "protection".
The relationships should all be spelled out pretty well in Agile. Of course, with Agile the point isn't to protect you from each other, it's to eliminate differences between you.
For instance, you are supposed to get rid of the concept of code ownership, if you find broken code you fix it. If you need help, pair with the original author.
QA needs representation in the core team. They don't get left behind because they are in every scrum meeting--as, of course, is the customer.
Management's role (if there is management) in agile is to stay out of the way and provide treats :)
These kind of things weren't just made up for fun, they really are important.
How about the agile manifesto?
http://agilemanifesto.org/
And the 12 priciples, which I'm sure you'll link through to:
http://agilemanifesto.org/principles.html
Edit
Sorry, I misunderstood the question. These are still some good principles!
Just keep communicating and addressing trouble when it comes up.
It's like in marriage: you can't prepare for every contingency beforehand -- you must be willing to deal with every setback that occurs by talking it through with your partners and finding a way to cope with it.