Subscribe by Email


Showing posts with label Email. Show all posts
Showing posts with label Email. Show all posts

Wednesday, August 21, 2013

Creating mailing list, and place for keeping documents for specific projects

This sounds so simple, but these are measures that can make a lot of difference to the successful execution of a project. You start out with a project which is different from the regular stuff that you are doing, with some people working for this project either on a full time basis, or on a part time basis. For example, while working on your regular project, there is a need for a patch to be released for a previous version of the product which was there in the market, and for which some security issue was found and which needs to be fixed. The teams and organizations that I have worked with typically do not have specialized teams for such tasks, with these instead being done by the core team as well; however, additional resources could be provided as required. In fact, there might be the need for some additional resources for the testing effort, since this would require a high amount of testing in a short period of time.
Finally you are getting the team together which we will be working to execute this project, and the team is brought together for a kick-off meeting where the basic objective of the project, the responsibilities, etc are defined for all the team members and their leads.
But, given the short nature of such projects, there are some specific challenges that come into focus, especially when it comes to items such as communication, and reducing the stress that people come under. For such short projects, there is a high amount of work that is expected to be done within the required timeline, and the team managers need to do all they to ensure that the scope for minimization of activities that could cause stress is there.
The other major problem is communication. Quite often, some communication happens between two or more team members that is important for the project, but there are people who miss this kind of communication. In the normal run of things, people affected will eventually learn about this communication, and things will not go out of control. However, when you consider the short duration of such projects, some communication that gets missed by a couple of team members when it was relevant to them can cause problems in the execution of the project. Setting up project specific emailing lists and encouraging the team members to use such email lists works well in ensuring that everybody gets communication related to the project.
At the same time, there is the need to setup internal sites and document repositories that capture information about the project, including a specific set of requirements and design, as well documents that capture the evolution of these (including comments and queries and answers that came up during the actual discussion to finalize these documents). Having such facilities ensures that people can refer to them easily enough, and new members to the team can pick these up fairly quickly.


Wednesday, April 24, 2013

Learning about external dependencies - getting information from external teams by getting on their lists

We had a huge problem around the start of the year. Our product is a greeting card application, which allows you to take your images or some standard images, add text or standard greetings, add voice which can be customized or taken from some standard greetings, and then you can convert this into a rich content greeting card that can be sent via email or via social networking. For integrating with social networking, we used the API's that were publicly made available by these platforms. We were not big enough that we could establish a direct contact with the social networking platforms, so we would just use these API's.
Near the beginning of the year, we started getting customer complaints that the product would just not work with a particular social networking site. They would try to use the product to send it, and they would get back an error that was basically saying something like: "Resource not found". This was reported on the user forums that we had for our product and once one person reported such a problem, others were able to confirm. This was good since it confirmed that it was not just a problem with one user, but also meant that people who were not using that particular feature also started feeling unhappy.
However, what really caused us a lot of problems was when one of our more technically oriented users pointed out that this could be because one of the API's that we were using was no longer in existence, it had replaced by another such API. And even worse, the user pasted the relevant notice from their technical forum where it was mentioned, pointed out the tweet where it has been pointed out, and so on. All this was repeated by more users who started making fun. How we had not bothered to keep up, how our problem was affecting a product that they were using, and whether we could finally get our thumb out and do something. Boy, was it embarrassing, and the problem was, nobody had much of sympathy for us. After all, we should have been on the ball, and should have known that the API was going to be replaced. The social networking platform had been talking about that for around 6 months now, so that people had enough time to do something.
The good news was that we could replace the API without needing to make a change in the application that users had, since the API call would in turn look at a piece of code on our website, and we were able to redirect them. It slightly decreased speed by around 5 seconds, but that was acceptable rather than try to roll out a patch to all the affected users.
Another policy was set in place as a result of this. From this point onwards, any external technology that we used was tracked in a database where we also tracked the site of the technology, we tracked all their accounts (twitter, facebook, forums, email) and once every month, we had a person assigned to review these so that if there was any notice, we could something rather than finding out later. It was good that we did so, since we ran into a possibly bigger problem later, but we were prepared and handled it so well that nobody noticed any problem.


Wednesday, March 7, 2012

What is meant by email spoofing in detail?

What is meant by Email or Electronic Mail?

- Email or electronic mail is the most popular and convenient means for exchange of digital messages and information in the modern world.

- E- Mail facility is harnessed through a computer network probably over an internet connection.

- Earlier the email can be used for sending messages only when both the sender and the recipient were online and such messages were called instant messages.

- But, today the email system is somewhat changed and is entirely based up on a store and forward model.

- When an email is sent, it is stored by the server and later is delivered accordingly.

- The sender and recipient do not require being online though they need to connect to the particular email server in order to send and receive the emails.

- The whole email system is today governed by the simple mail transfer protocol or SMTP rather than FTP or file transfer protocol that was used earlier.

Problems faced by Email Systems
These email system like any other system has too got many problems like:

1. Attachment size limitation
2. Overloading of information
3. Spamming
4. Computer viruses
5. Email spoofing
6. Email bombing
7. Tracking of sent and received emails
8. Privacy concerns

This article is dedicated to the worst problem being faced by the email today i.e., “email spoofing”.

Introduction to Email Spoofing

Most of us are aware about the content spoofing; the email spoofing is also somewhat same only with the only difference being that it affects emails rather than web sites or web applications.

"An email is said to have been spoofed when its sender’s address as well as its header part have been altered to make it seem as though it has been originated from a source different from the actual source."

What makes these emails so vulnerable to email spoofing?

- More and more emails fall victims to email spoofing since the simple mail transfer protocol (SMTP) does not provide any techniques or methodologies for the authentication of these emails.

- It becomes comparatively easy for the attackers to forging and impersonating the emails.

- In some cases there might be legitimate causes for forging an email but in other cases the cause can be quite mischievous like phishing and spamming in order to hide the origination of the email.

- The attacker can easily change the email properties like its return path, reply to and from fields etc and make it appear as though somebody else had sent the email hiding the identity of the actual email sender.

- The recipient comes in to believing that the email has been received from the address as altered and stated in the “from” field when it is actually form a different source.

- Such emails are said to be spammed and bear the address of the spam email in the “reply to” field.

- Most of the spam emails are malicious in nature and may be infected with a Trojan, virus or worm and so on.

- Some might be just for the sake of advertisement of some cause.

- Earlier before the advent of the spam, the legitimately spoofed emails were used as a viable business model.

- Consequently the spam emails came to be recognized as an annoying problem. This problem called for the need of anti spam methodologies.

- Spoofing the IP address is somewhat difficult as compared to spoofing of the email content.

- This is so because of the great bit size of the IP address.

- To overcome such spoofing problems techniques such as following are used:
1. PGP cryptographic signatures technique
2. Using SSL or TLS in mail transfer software
3. Other encryption techniques.

Proper authentication is the only solution for preventing spoofing and bombing of emails.


Monday, March 29, 2010

POP - Post Office Protocol

Post Office Protocol (POP) is an application-layer Internet standard protocol used by local e-mail clients to retrieve e-mail from a remote server over a TCP/IP connection. The Post Office Protocol (POP) allows you to fetch email that is waiting in a mail server mailbox. POP defines a number of operations for how to access and store email on your server.
It works in conjunction with the SMTP (Simple Mail Transfer Protocol), which provides the message transport services required to move mail from one system to another.

Purpose of POP


If somebody sends you an email it usually cannot be delivered directly to your computer. The message is stored in a place where you can pick it up easily. Your ISP (Internet Service Provider) does this job. It receives the message for you and keeps it until you download it. Now, POP, the Post Office Protocol is what allows you to retrieve mail from your ISP. This is also about all the Post Office Protocol is good for.

What POP allows you to do?


Things that can be done via the POP include:
- Retrieve mail from an ISP and delete it on the server.
- Retrieve mail from an ISP but not delete it on the server.
- Ask whether new mail has arrived but not retrieve it.
- Peek at a few lines of a message to see whether it is worth retrieving.

POP3 is an open Internet standard. The common POP3 commands and responses are :
- getwelcome(): Gets the greeting from the server.
- user(username): Login with a username. If valid username, server will respond with request for password.
- pass_ (password): Send password. If valid, server response will be two numbers, message count and mailbox size.
- stat(): Get the mailbox status. Response is two numbers, message count and mailbox size.
- list([message]): Get list of messages. An option "message" gets information on a specific message.
- retr(message): Get message number "message".
- dele(message): Delete message number "message".
- rset(): Remove all deleted message markings.
- noop(): No operation. Do nothing. Really. Needed in unusual programming situations.
- quit(): Quit. Commits all changes, unlocks the mailbox, and ends the server connection.
- top(message, lines): Gets just the first "lines" number of lines of message number "message". Useful on low bandwidth lines to get just the first part of long messages.
- uidl([message]): Gets a unique id list -- a message digest including unique ids. The option gets the unique id for the specific message "message".


Facebook activity