How difficult would it be to build a Chat/IM Client for an office network? [closed] - vb.net

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
First and foremost, I would like to say I am very, /very/ new to programming and the like. If I decide to build this, this would probably be my first "large" project i've ever done myself.
What I am looking to build is a very simple Chat/IM client to use for the users in our office network. It would just call us their Windows logon name and use that to IM and the like. I'm talking a very simple client, with a list of names of people who are logged into the network, and option to IM them and an option to do a multiple user chat. It doesn't have to be visually stunning.
How difficult would this honestly be? Is it possible for me, someone who has very little knowledge when it comes to programming to teach myself how to build it?
If not, can you explain why this would be very difficult and what already built clients would work well for what I am using?

This is a big application. Your first parts will suck and refactoring it later will suck even more. I suggest building something small in the first place and then step from one bigger project to another.
XMPP/Jabber is IMHO the best solution for office IM. Most clients like Pidgin, Adium etc can connect to it. Every bigger company I worked for in the last years used it. Take a look at Openfire - A free open source XMPP server that you can directly connect on and which is easy to set up: http://www.igniterealtime.org/projects/openfire/

Related

Ready API automation framework [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 3 years ago.
Improve this question
This might sound a very vague question, but I am hoping to get some insight from all of you who can throw some ideas so that I can move in the right direction. I have ReadyAPI license and want to develop an automation framework around it. I can of course add assertions and create tests and everything within the tool, but I am wondering if there is a way I can build keyword or data driven framework around it so that I can have reusability, ease of use, adding assertions on the fly, execution via excel, or even adding assertions via excel (not sure). I am not sure if that's going to make creation of tests even more complex. Please provide your valuable inputs!
If you already have Ready API! then you probably don't need anything else. The licence is not cheap, so you'd have to consider if you really want to spend more money buying something from Mindtree. And, looking at their list of dependencies, there's always the danger of getting bogged down in the tooling and making them work together rather than doing actual work.
Why not start small and simple by doing some data-driven test cases using Excel or even a database as your source? I've used Excel to drive test cases and to populate assertions and not encountered any problems. For any customised behaviours, there's always Groovy to help. Then, once you've maxed out the capabilities of Ready API! look at something else.

New job, Giant project [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 10 years ago.
Improve this question
So, I just started a new job a few weeks back. It is my first job doing software, and I have been tasked with learning how a giant project works. Now, the guy before me left NO (zilch) documentation or comments anywhere in the source code. In addition, he applied basically EVERY design pattern in the famous design patterns book by Gamma, etc...
My question is, how do I start? I have tried setting break points for certain calls that I want to learn (learn bit by bit), but because of the 5 million design patterns employed, every call goes up about 7 levels just to finish, and by then, it's hard to keep track of the 20 some objects being created and used.
Has anyone had a similar experience? A few pointers on different methods to try?
Specs: language - VB.net
IDE - Visual Studio 2010
Using - Windows Forms
Brain - Melting
Inheriting a large project without documentation is always a huge pain in the ass. I hope you have already accustomed your manager to the inconvenient truth that it will take several weeks or even months until you can maintain that project efficiently.
I would start with creating some UML class diagrams. That could tell you a lot about how the system works and which design patterns are used where.
While doing so, I would also add comments to the code with everything I learned about it. When I am not sure if I understood what the code does correctly, I would add a common string like "NOT_SURE" to the comment. Later, when I have a better understanding of the system, I could use a text search to find and revise these comments.

Creating standalone help files [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
Currently I'm wrapping up an application at the moment, and I'm at the stage where I need to document the application for anyone who wants to use it.
At this point, I just need something that will tell users how to use my program. Even though I tried to design it as user friendly as possible, I have a group of users who aren't tech savvy and need something they can refer to.
So my question is basically: What can I do to easily create help files?
This answer will pretty much assume you're using some version of Microsoft Visual Studio, although the first approach is generic enough to work on any OS with a HTML rendering engine.
You could create a series of HTML files, store them locally on the user's computer, and when the user calls up help, load those in the default browser (this being the same kind of approach Microsoft took with Visual Studio 2010). However, I think that's kind of a hacky solution.
There used to be a product called HelpStudio Lite; unfortunately it's been discontinued.
If you're willing to use Microsoft Help 2.0 (which was used through Visual Studio 2008 and some other products), you might want to take a look at http://www.mshelpwiki.com/wiki/tiki-index.php?page=Help2. Evidently it's some kind of wiki detailing how to put together your own Help 2.0 documents. I'm not sure if it will work with Visual Studio 2010 (this is because VS 2010 uses a new help system).
I really wish Microsoft would get their act together on the help documentation front.
EDIT: You may want to look at Sandcastle Help File Builder. I found it recommended at https://stackoverflow.com/questions/6023/what-are-good-tools-for-creating-compiled-html-help-files-chm... actually you may want to go read that thread as well.

Selecting a software development project [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 2 years ago.
Improve this question
I am currently my software engineering degree and as I am in my second year I need to select a topic for my project. I am totally confused on how to pick a good project topic, which I could use in my final year as well.
I have specialization in the following areas, java, vb.net, sql server 2005 as well as artificial intelligence.
I can also manage with designing interfaces for vb.net in flash.
Any help on a good topic which I should select would be greatly appreciated.
The best projects are the ones that you actually want to build. I struggle with this kind of thing myself in my "outside-of-work" projects.
Gauge the amount of time you have to work on it, that will probably limit your possibilities.
Pick something you're passionate about, even if it means learning a few (small) things -- this isn't a good time to learn C# or Ruby, but using learning how to use encryption in VB.NET is probably small enough.
If you can, build something you can use or that someone close to you can use.
An example:
I built a small P2P messaging client for my 3rd year security course which used Public Key encryption to send messages between clients. It wasn't fancy, but it worked and I managed to build it in about 3 weeks. A few of us used the client in class for the remainder of the term.

What documentation is helpful when supporting an application? [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 am going to be taking over from a developer here at work soon. Hence, I'll be supporting all the applications that he has written over the last few years.
My question is, when supporting an application that you probably don't know much about, what kind of documentation is most helpful to get a handle on how to fix problems, extend functionality, modify functionality, etc? I'm thinking it would need to give you an overview of what the software does, what interfaces it has to other software, what databases it uses, usernames, passwords, and so on.
Is there such a thing as a software support document? Referrals to any templates would be most helpful.
BTW, unfortunately, there are no requirements documents, specs, etc! So, really my question is, if my colleague had a day to write a single document for each application so that I could (more easily) support it, what would that document be and/or what would it look like?
I would ask for primarily some sort of flow chart/schema of the way the app functions.
I would want to be able to know how each file interacts with other files (and the database). So this way, you'd know where to start to fix a bug or add a new feature, etc.
So to do a quick, text mockup of it:
Index.php -> Login.php -> Dashboard.php
Index.php:
Has login box. Submits login into to login.php
Login.php:
Verifies data with database entries, shows error on fail or sends to Dashboard.php
Dashboard.php:
Once logged in this acts as a main menu
Something along these lines? For basic documentation I'd think this is the way to go.
Hope this helps. Good luck!