Creating a setup script [closed] - windows

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 4 years ago.
Improve this question
I don't even know how to ask this question, therefore I couldn't find anything that might help me.
I want to write some sort of script that downloads softwares, installs softwares(like eclipse), drivers, edit files(like configuration files) and more, so that a when a new developer comes to our company he will launch the script and he is set with all of our configurations.
What is the best way of doing it?
I am familiar with python, working on windows
Thank you very much!

I would say there a several options, but none of them are cheap:
Switch to VMs and setup a default VM for developers with everything they need one time and distribute the snapshot to new employees. If something changes, change the snapshot and distribute it again.
There are some options to do this on real hardware, but I have never done this and according to this https://superuser.com/questions/716494/creating-a-snapshot-of-a-windows-7-system it is not a common way to go
Script everything by hand, make a lot of mistakes and take a lot of time ;) A python script can certainly do a lot of things, also can powershell or batch files. But it is a long way to go and it is very time consuming when a operating system updates or all of the sudden some installers do not support unintended installations anymore. I used to automate some installations in my job when I was a student and it really took some time and effort to maintain this all.
After all, this is more of a superuser.com question than stackoverflow, but maybe I could help anyhow.

Related

Designing a makefile for installing / uninstalling software that I design [closed]

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 writing a compiler and there are certain things that I simply can't do without knowing where the user will have my compiler and its libraries installed such as including and referencing libraries that add built-in functionality like std I/O. Since this is my first venture into compilers I feel that it's appropriate to only target Linux distributions for the time being.
I notice that a lot of compilers (and software projects in general) include makefiles or perhaps an install.py file that move parts of the application across the user's file system and will ultimately leave the user with something like a new shell command to run the program, which, (in a compiler such as python's case) knows where the necessary libraries are and where the other necessary files have been placed in order to run the program properly.
How does this work? Is there some sort of guideline to follow when designing these install files?
I think the best guideline I can give you at a high level would be:
Don't do this yourself. Just don't.
Use something like the autotools or any of the dozen or so other build systems out there that handle much of the details involved here for you.
That being said they also add a certain amount of complexity when you are just starting out and that may or may not be worth the effort to start with but they will all pay off in the end assuming you use them appropriately and don't need anything too extensively specialized that they don't provide nicely.

Why Phing/Ant over Bash and Make? [closed]

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 9 years ago.
Improve this question
I've been using Phing at work (it was set up when I got there), and thinking of using it for some personal projects. One thing I haven't got my head around yet though is what the big appeal is?
What, if any, are the killer features of Phing or Ant? What are the big reasons people choose to use them instead of (for example) just a collection of bash scripts that execute their build actions? I'm sure I'm missing the obvious, hopefully someone can help me. While I understand that some people may prefer not to use phing/ant, I'm hoping to hear from people who do prefer them about why they prefer them. Just so I can make a more informed decision.
Thanks for any direction or links.
The main feature of Ant is to add frustration to your day, when you know you could achieve something in 30 seconds in a Makefile, but end up fighting with Ant for an hour :)
It was a fresh implementation without requiring a functional shell and all the other standard commands that you expect to be available with a shell. I think that's the real killer feature - you can use it on Windows OS.
Ant XML is far more structured and machine-readable - whereas Makefile+shell is essentially Turing complete and extremely generic. Your IDE has a hope of being able to understand Ant XML, the same can't be said in the general case for Makefiles.
Sadly, the reality after all this time seems to be that the IDEs don't make good use of this potential win. Case in point, opening build.xml in Eclipse just shows you XML.
Which I think just leaves the Windows OS rationale. If there was no Windows OS, probably there would be no Ant either.

Buy or build tool for Data Reporting? [closed]

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
We have been asked to provide a data reporting solution. The followng are the requirements:
i. The client has a lot of data which is generated everyday as an outcome of the tests they run. These tests are run at several sites and they get automatically backed up into a central server.
ii. They already have perl scripts which post process them and generates excel based reports.
iii. They need a web based interface for comparing those reports and they need to mark and track issues which might be present in those data.
I am confused if we should build our own tool for this or we should go for already exiting tool(any suggestions?). Can you please provide supportive arguments for the decision that you would suggest?
You need to narrow down your requirements (what kind of data needs to be compared, and in which format?). Then check if there is already a software available (commercial or free) that fulfills your needs. Based on that, decide if its better (i.e. cheaper) to implement the functionality yourself, or use the other software.
Don't reinvent the wheel.
There are quite a few tools out there that specialise in this sort of thing, my gut feeling is that you can find something ready made that does what you need.
As a side note, that tool may also be a better solution for creating those excel reports than the perl scripts.

Project retirement or archiving [closed]

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 11 years ago.
Improve this question
What is the best way to retire a currently active project? I've been working on this one for a while now and I think its time to let go. Without going into too much detail, there are other projects and technologies that are way ahead now and I don't see much value in investing in it any further.
What have you done to retire a project and what is the process like?
As operating systems, compilers, etc. change, it can be difficult to rebuild old projects.
Consider creating a virtual machine that is configured to build it again, in case you need to update it for some reason in the future. Archive that VM along with the source code, etc.
Personally, I've done this before, and put up on the homepage of the project
"I no longer wish to maintain this project - if you're interested in taking it over, then feel free to email me (email#address)"
And then let someone take it over.
Is this a personal, community, or commercial/professional project?
I have had a professional prject go sour due to lack of feedback form the client. Bascially they were going at a slower pace than they should have and it got to a point where the software would be more expensive to contine than to get a prebuilt alternative. In that case i just brought in the data to show the client where their saving are and recommend to abondon. Its hard to swallow, but after a while they realize it was for the best.

What has your QA/tester team said or done for the development team that made your day (as a developer) [closed]

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
There are lots of questions on how to improve communication between teams. One way to start is to identify what one team actually does that the other team really values and do more of that.
For example. Our QA team provided a VM for us with:
The latest release of our server-based commercial software installed and configured (not an easy task in that an installation on-site takes at least 2 days)
A database backup of the configured system including sample data
an auto-install and configure application that mostly works. (with 12 install packages for the components needed, this is a big time saver)
While we still do most of our testing on our own desktops, this allows us to have a relatively clean environment we can run locally.
What has your QA team done for you lately? Conversely, what have you done for your QA team?
"It sucks less."
That truly made my day.
A good friend of mine who used to be in our QA department put together a bunch of amazing scripts with AutoIt. To me they were like gold, he would find issues, write me a script, email me the executable and I'd have a way to reproduce problems in a snap. His scripts helped me track down a memory leak that I had been (unsuccessfully) trying to track down for months.
Automated testing is a Good Thing. Oh - he has since been promoted to Software Engineer and works on my team now.
I'm surprised that nobody has said "My QA team found an important bug before my code got to the customer."
"It crashed!" - the bug we were hunting for something like several months was reproduced.

Resources