FTP:
The project consists of a client and a server program, which run on different hosts. The client can request to download file from the server. TCP socket is used in data transmission.The client create a TCP socket to connect to the server, then sends over the file name. The serve program creates a socket toaccept the connection, then it create a new socket to serve the client by sending over the file. weak
The client program creates a TCP socket, and builds up a connection to the serve. After sending the filename to the server, the client program enters a loop where the file will be received from the server, and be stored as a local file. Server program creates a socket, bind it with an address and get ready to accept connections. Then it enters an infinite loop, where a new socket and a child process are created to serve the client. The file on the server will be sent to the client line by line.
--------------------------------------------------------------------------------------------------------------------------------------------
Remote Procedure Call:
The project consists of a client and a server program. They run on different hosts. It uses Remote Procedure Call to invoke procedure on the server, and send the result to client. The server program first register the procedure to be called, and then execute remote procedure dispatcher to wait for requests to come in. The client blocks itself after making the RPC call until it receives a reply from the server.
Client program use RPC_CALL() function to make RPC call. The procedure on the host is specified by program number, version number, and procedure number. They are passed to server as the arguments of this function. Also among the arguments are server name, parameters for the remote procedure, address to store remote procedure results. The function is defined in RPC services library librpcsvc.
--------------------------------------------------------------------------------------------------------------------------------------------
Go-Back-N Protocol: (The project can tell us how packet transfer speed changes with loss probability, corrupt probability.)
The project simulates the bi-directional data transfer between two nodes. Each node keeps sending out packets until the window size is reached, and returns a token after receiving a packet. Since packets can be lost or corrupted, they will be discarded if they carry wrong checksum. A timer will be started for each packet the moment it is sent. If the node does not get acknowledgement before time-out, it will retransmit all the unacknowledged packets.
The project defines six kinds of events to simulate the process. They are packet arrival, packet sending, packet receiving, token sending, token receiving, and timeout. Each kind of event is handled by its own routine which adds new events into the event list. All events have time tags attached to them, which determine their order in the event list. The events are handled based on their time tags.
--------------------------------------------------------------------------------------------------------------------------------------------
PC Room Supervisor:
I was supervisor of a computer room for several semesters. My main duty is computer maintenance. It is to make sure that all computers are up and running, virus free, and all softwares are properly installed. Since the room belongs to Physics Department, my second duty is to check the identity of each user, verifying that they are either physics major students or students who are taking physics courses.
--------------------------------------------------------------------------------------------------------------------------------------------
Lecturer of Lab course: (This job is a quite challenging but rewarding experience.)
I taught an undergraduate lab course for one semester at UMass. In each lab session, I first outline the experiment procedure and explain the physics principles involved. Then I guide students through the whole experiment process, answering their questions and correcting their mistakes. Before the class begins, I check all lab equipments to make sure they function properly; after the class I collect the students' lab reports and give them grades.
--------------------------------------------------------------------------------------------------------------------------------------------
Potts Model:
The mathematical model I worked on is a called 3D Potts-model. It is found that phase transition is continuous for 2 states, but first order for 3 states. My research is to find the boundary. Since energy changes monotonically with temperature for continious transition while it does not for first order, our method is simply to set state of the model to different value, and decide the type of transition from its the energy-time relation. Invaded Cluster Algorithm is used in our simulation.
This is how the Invaded Cluster Algorithm works:
3D Potts model looks like 3D lattice, where all neighboring sites are be connected by bond if both sites are taken, and all sites connected by bond form a cluster. The algorithm works like this: we randomly pick sites until the bond number reaches a preset value. Then a number of clusters are erased based on state value, and all the sites inside these clusters are set free. Since the bond number represent temperature, energy can be calculated from cluster configuration, we can statistically establish the relation between temperature and energy for a particular state.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
LMT:
Large Millimeter Telescope has total of four reflectors.The shape of each reflector is defined by a equation with a number of valiebles. The work is to determine these variebles so that the lights coming from various directions can have minimun aberration at focal plane, and also the electical-magnetic field distribution at the receiver entrances matches the opitimal pattern so that signal loss can be minimal.
The method we use to find the optimal reflectors is to construct a function representing both aberations and electrical-magnetic field. Since the function changes with reflector variables, finding the optimal refectors simply translates into the finding of the minimum point of the function. Using software Code V as our design tool, we start with a random set of reflectore variables, and then step by step we get the optimal reflector variables by using Levenberg algorithm.
Sanjiu Technology Development Co. (http://www.600614.com/english)
This web site provide the basic information about the company and its historic background. It also publishes corporation news, which is updated on a daily basis. From this web site, you can find investment information that include stock price, stockholders and economic indicators. The management structure is presented in the form a diagram. The web site provide links to its subsidiaries.
The web site displays the company's stock charts. These graphic charts are first made using Microsoft Excel.Then they are inserted into web page using Dreamweaver. The web site also shows its graphic site map. It helps viewers to get a clear idea of how all web files are organized. By changing the visibility of layers, drop-down menus are created to provide view with many links within limited space.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Shanghai Aircraft Manufacturing Factory (http://www.samf.cn/defaulte.htm)
This web site walks the viewer through every aspect of the company, which is an airplane parts manufacturer. From this web, you can find detailed information about its management personell, engineers and skilled workers.All the aircraft parts and components the comany makes are presented both graphically and using text. The web also provides details on aircraft repair services. Feedback using email is accessible to customers who wish to offer comments or file complaints.
The web site uses a combination of table and Cascading Style Sheet to arrange the content of web page. Instead of going direction going to home page, the web opens with a page showing Flash movie. The openning page provides choices that lead to its chinese or English version of the web site. Using HTML Marquee tag, text is shown to be scrolling across web page. It both saves the space and makes the web page dynamic.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Heng Shan Hotel (http://www.hengshanhotel.com/location.htm)
This web site provided viewers with all the information concerning different types of suites and guest rooms. The customer can find room avalaibility, check prices directly through internet. The web site is linked to a advanced reservation system developed by a financial institution . It enables customers to make reservation online using credit card. Links to other services like airport transportation and weather forcast are also provided.
The web site is written in asp except the reservation system which is written in PHP. The reservation system is located on a separate server provided by the financial firm that makes the payment system. The web site checks the customer’s personal informantion and credit card numerber, and then sends them to payment software for further processing. This web site use animation buttons. They are made by Macromedia Flash.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Nanjin Hotel: (http://www.nj-hotel.com/e1.htm)
Like all hotel webs, this web site provides viewers with room prices and their availability. One thing special about about this site is that it uses a large amount of graphic images to illustrate hotel's interior decorations. So that the web viewers can get a vivid sense of what the hotel and its accommodations look like. Besides static images, this web site also uses sophisticated Flash movies, moving text to animate web pages. Each web page is a mixture of static image and dynamic text.
This web site is image rich. All the graphic images are made from digital photos. Before being embedded into web page, the digital files are imported into Adobe Photoshop and processed by its filters. They are then made into GIF files. The images are interspersed among text to give a visual presentation of the hotel.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
RSS Reader:
RSS stands for Really Simply Syndication. RSS reader is an easy way to let people know what new content has been added to a web site they are interested in without requiring them to visit the web sites on a hourly/daily basis. The RSS Reader allows users to subscribe to channel, organize channels into folders and view news items of selected channel. Users may refresh channels , and add or delete both channels and folders.
The RSS Reader grabs channel information from a XML file through internet, and stores them into the database. The user interface window display on its left side all available folders using combobox control , all channels for selected folder and all news items for highlighted channel using list box control. On the right side, the window displays the title and description for each news item using textbox control, and web content using web browser control. Menus are created to edit , delete and add folders and channels.
The database stores all the news information. They are classified into channels, and all the channels are further classified into folders based on the nature of each channel. So the database consists of three tables. The first table records folder information; The second table records channel information; and the third table records news information.
The Microsoft SQL Server is integrated with Visual Studio. You open the Database Explorer, and create a Database for your application. Then you create tables and add them into database you created. By draging those tables into design area, the visual studio will automatically generate dataset, bindingsource and dataadaptor for each table. And finally you open ToolBox, put window controls on the form and specify their bindingsources.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Quiz Engine:
Quiz Engine allows users to registrar to take quiz through internet. After login, the user is presented all available tests. Each quiz is provided in the form of multiple choice. After exam, the user can review his quiz results and save the score into record. (they can see their previous scores every time they take the quiz. The quiz engine is skinnable. It means the other users can integrate this quiz engine into their web site by changing style sheet and graphics.)
The project has a total of four web pages: login page, start page, result page and question page.The login page use Login control for user to login and CreateUserWizard control for new user to register. The start page use Gridview control to d isplay all the available tests, and the user's previous test scores. The question page uses Detailsview control to display each question and its multiple choices, and a button to navigate through the whole test. The result page use GridView control to display the correct answers and use DetailsView control to display their explanations .
The project has a database that consists of three tables. The first table records all available tests. The second table records questions, their multiple answers and correct answers; and the third table records test history for each user.
The Microsoft SQL Server is integrated with Visual Studio. You open the Database Explorer, and then create a Database for your application. Then you create tables for the database you created and define columns for each table. Finally you populate these table by adding data into them. After you created database, you open Toolbox, put web controls on the web page, specify their datasources by choosing which table and what columns to be bound to the web controls.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Is there anything else you like to know about?
I think the job sounds marvelous. I will be looking forward to hearing from you. I hope it is good news.
I think we have covered almost everything. But I want to reemphasize the key strength I can bring to this position. 1:Education 2:Experience 3:Skills
Choice two: I am very excited about the prospect of working for your company. Just let me know after you make the decision. I hope it is good news.
Tell me about yourself.
I am self-starter, highly motivated, but easy to work with. Self-disciplined, I strictly abide by company rules and regulation. Hard working and quick learning are among my strong points. I never stop self-improvement and hold myself to high professional standards.
Alternative answer: I am a good communicator and can help others focus on a goal and motivate them to achieve it. I am persuasive, but I also have good listening skills. I am sensitive to my environment and those around me. I value excellence.
Alternative answer: I am programmer with an MS degree from UMass and five years of programming experience. I have tremendous amount energy and love to be challenged. I am constantly trying to take on additional responsibility and learn new things. I have been watching your company for some time now, and I've been impressed with your innovative approach and fast growth. I'd like to be a part of the winning team.
Why did you move to Canada?
I like the United States. But at the time when I got my Master degree I didn't have Green Card. And it is much easier and takes less time to become permanent resident of Canada. Now I am Canadian citzen. Looking back, immigation to Canada is the right decision. I am glad that I made that decision.
Why didn't you find a job in Canada?
Well Canada is great place to live. But there are more opportunities in the States. Many Canadians who work in computer industry seek employment in the United States.
(I could have found a Canadian company to work for if I chose to. But the pay of those Canadian companies is less than desirable. I don't want to work for them.)
What strength and weakness do you bring to this position?
A: I am a hard worker. With good health and tremendous energy, I can work day and night withoug fatigue.
B: Thanks to a sharp mind and a good memory, I learn fast. For a programmer, this is an important quality
C: I am easy to work with; you can say I am a good team player.
D: I have a good education background. I got a Master degree in Computer Engineering.
I think all these are my strong points.
Well, I must admit that I have little patience with people who are slow performer. But I realize I should be more polite and exercise more restrainst.when dealing with such colleagues. And I don't much like people who are sloppy in their work.
Sometimes I tend to be demanding in my work. That probably is a weakness. We are in the business of making money. As long as our product meet the customer's requirement, that should be good enough. If you set the bar too high, it will inevitably lower the productivity. We need to strike a balance between the quality of our products and efficiency.
I have good health. I tend to feel sleepy in the afternoon if I don’t drink a cup of coffee.
In the past, I has been hard for me to accept criticism from my peers. However, I have learned to value this input and it has improved my work performance.
What kind of salary do you expect?
I am looking for the right opportunity, where I can make an impact. I am open to whatever salary range in your company, and I am sure you will be fair.
(An employee's salary should refect his education and experience. I got a MS degree and five years of web developing experience. According to the job ads, this job pays from 555 to 999. This is acceptable to me. Otherwise I wouldn't apply. )
(What is the pay range for someone with my background?
My expectation is in the range of 555 to 999. I need 555 year to cover the living expenses. But I expect that you would find me worth more than that. Salary should be based on the duty of the job. Unless I know all the details of this position, I am afraid that I can not give you an exact number.)
Do you know anything about XXX?
Unfortunately not. But I am a quick study. My education gives me a solid foundation in computer science, which will help me to learn without difficulty. And my past work experience tells me that I can pick up a new computer language, and grasp it in very short period of time.
Yes, I am familiar with XXX. I learned XXX three years ago, and have had numerous occasions to use it in web development.
When can you start work?
If you offer me this job, and if I accept it, I see no reason that I can't get started right away. Procrastination is not just a waste of time; it has a way of draining energy, which could otherwise be channeled into the new job. I am excited by the prospect of getting a new job, and have the enthusiasm and eagerness to get started without delay.
Choice 2: As soon as you want me.
Do you have any hobbies/ outside activities? What have you learned in them?
I like sports. Every day I go jogging after I finish work. It helps me to clear my head of all sorts of problems from work. The next day I return to my work with a light-heart and high spirit.
I like sports. I used to play soccer a lot and still do when I get a chance. What sports teach me that can be useful to my career is the importance of teamwork. You don't do everything by yourself. You work with other members of your team to achieve a common goal and win the competition.
What is your short term and long-term goal?
My short-term goal is find a position that can utilize my strongest skills, a position that can allow me to develop my capability and grow professionally.
My long-term goal is to play an important role in the company's success, and to help to raise its profits.
How do you learn about our company and position?
I responded to your ad in the (location of ads), but for some time before that I had been investigating this company as a potential employer. Your (growth rate) and (profit) intrigued me, and I determined that I really had something to offer here. When your ad appeared in the (location of ads), I thought to myself " This is my chance". And here I am.
___________________________________________________________________________________________________________
Why are you interested in this position?
Choice one: I applied for this job because I have some of the skills that are required, like C++, HTML, and JavaScript. And I can meet most, if not all, of the qualifications for this position. My career goal is to become a software engineer, and I believe this job will help me to develope my capability further. (For big firm) Your company is regarded highly and I like to be part of a prestigous firm. (For small firm) Your company is expanding fast, and I like to be part of that growth.
Choice two: (This part may not be applicable to the company applied) I want this job because of the challenge and the opportunities at your company. I am well qualified for it, and this is exactly the kind of (competitive/progressive) atmosphere I have been looking for. My career goal is SW and this job would allow me to develop my potential further while actively participating in that kind of work.
What do you know about our company?
I have done some research and reading about your company, and was impressed by what I found.
(For small firm, say something like You were founded eleven years ago. You have grown steadily since then. You have added employees.) I like to join a company that is expanding and growing. And your firm obviously fits that profile.
(For big firm, say something like Your company is highly regarded in your industry.) I alway like to join a pretigious firm. And your firm obviously fits that profile.
Choice two: I've been very impressed by all the reading and research I've done about your company. It projects an excellent image, and its message is persuasive. Internally, it is a sound operation, with ambitious goals and realistic plans to achieve them. I see great potential for growth here, and I want to be part of it.
(This part is may not applicable to the company you apply: Most important, I've heard that your company offers a challenging work environment that expects a great deal from people and gives them the opportunity to realize their potential. That is what I look for in an employer---an active, creative environment where I am limited only by my capabilities and where positive results are acknowledged. )
What is your specific interest in software area? (this answer needs to be prepared for each interview)
One kind of projects I would like to work on is client-server application, which involves database and networking. From the research I have done, I find many companies are migrating their applications from mainframe to client/server environment. I think that if you know how to develop this kind of software, it can be the very marketable skill.
One of my interests in software is firmware (or device control), which involves the hardware. This kind of work suits me well, because, besides programming, I also got good training in semiconductor physics. Firmware is widely viewed as more complicated than other kinds of software; and I like to work on things that are challenging.
Can you provide me with references?
I can provide you with a photocopy of my school transcript. It lists all the computer courses I took at Umass. You can confirm it with the UMass at Amhert. Also I can give you the name of my Master degree advisor. I believe he will attest to my ability as a student, and endorse my application for this job.
I developed a number of web-sites in my last job. These web sites constitues my achievement, if you can call them achievement.
What is the biggest mistake in your last job?
I made some mistakes in my last job. But fortunately, none of them caused serious damage. One mistake I remember is that once I downloaded some files from an obscure web site. As a result, my computer was infected with spyware that no anti-virus software could kill. So I had to reformat the harddisc. The lesson is that you can’t be too trusting when it comes to web sites you know nothing about.
Whom do you admire most?
One character from history I admire a great deal is Benjamin Franklin. He was one of the greatest people of his generation, excelling in science, business and literature. Franklin managed to combine high intellect with good humor, and private success and public service. I admire those characteristics.
How long have you been looking for jobs?
I have just been in the job market. I am looking for something special that fits my specific skills and experience. Your firm is one of the few that I have considered. I have not got any job offer yet, but I am confident that, with my education background and programming experience, I will land a good job very soon.
How would your co - worker, friend, superior describe you?
My colleagues would say that I am a good team player, easy to work with, but have no difficulty getting my work done independently. I have made it a goal to win the respect from my co-workers, and I have been always successful in achieving that goal.
I think a friend would describe me as selfless, honest, reliable, as someone who keeps personal commitments, protects personal confidence.
My superiors, I believe, would say that I am a productive employee. I complete my assignment on time and work well with others to achieve company’s goal.
What is the most important lesson you learned in your last job?
One lesson I learned is the importance of early planning. Since the customer's specificatons for a project can be sketchy and ambiguous. As a result, what often happens is that what we designed is not exactly what the customer wants. So I think it is extremely important to get clear about what the customer really has in mind before starting a project. It looks like extra work, but it's worth the time.
What have you learned from your last job?
There are a several things I have learned from my last job. First, my last job confirmed my belief that I can be a good programmer. Second, I learned the importance of maintaining a good relationship with your employer and co-workers.
What is your biggest achievement in life?
My biggest achievement is probably the success of being admitted to the University of Massachusetts. With the scholarship I got from UMass, I was able to get US visa and come to America. I have since accomplished many thing in my career. But I still look on that one event as the turning point and the accomplishment that make all the others possible.
Choice one: My biggest achievement is probably in physics research. I worked as research assistant when I was at UMass. The mathematical model I worded on is called 3D Potts-model. Using computer simulation, I successfully located the boundary that divides its continuous and first order phase transition. This project requires a combination of programming skills and Physics principle. I am very proud of this achievement.
(This new finding was reported on a national conference of statistics physics in the US. )
What do you enjoy most about your last job?
The most interesting part of my last job I would say is technical challenge. In each project you try something you never did before. This prevents the work from becoming repetitive and tedious.
(I like the people I worked with in my last job. They are all highly educated, very intelligent, very interesting, That is one of the good things working in computer industry, you have chance to meet many talented people. )
What do you enjoy least about your last job?
As a programmer, I have to work extended hours. Ten hours a day is pretty normal, sometimes I even put in weekends. That is the downside of the job. But I have good health. And I have got used to working overtime.
Another thing I do not that like about my last job is that when you work as member of a team and if you finish your part of the project earlier, you have to wait; but if you lag behind, you will have to work under great pressure because other people are waiting for you.
How did your first get into web designing?
Back when I was at UMass, I knew that I would become a programmer, because that is the kind of work I like to do. After I moved to Canada, I learned from a friend of mine, who worked for Rainbow Systems Inc., that his company was hiring web programmer. I applied for the position, and luckily got the job. The company has a softness for US degree. That is probably one of the reasons that I got hired.
What is your most difficult task in your last job?
In my last job, my primary duty was programming. But one day, my company's two graphic designers were not available. So the manager let me do the graphic design instead. This was not easy task for me, because I didn't have any training in graphic design. But I still finished the job to the satisfaction of the manager. The grasp of Adobe Photoshop within a reasonably short period of time shows that I am a quick study.
Idea of success:
I define success as being able to make a meaningful contribution to the employer. While pursuing personal goal is understandable, a good employee should always put the interests of the company above his own, because there is no personal success to speak of without the success of the organization that hires and pays him.
Have you ever been leader?
I have never been leader. But I have been a teacher. From teaching, I have developed an ability to spot potential in other people and have been able to foster their development. For me, that is the essence of leadership: helping others to realize their potential.
Give me an example of your leadership.
When I was TA at Umass, I maintained a very close relationship with my students. They often dropped by my office. Some came to ask questions relating to their lab reports. Others came simply to have a chat. I always use this opportunity to help them identify the areas where they need improvement, and suggest ways to do that. Helping others to solve their problems and realize their potential is my idea of leadership.
What do you see the trend in this business?
The new trend in web development is that with the arrival of .Net and PHP-MySql, web sites developed using old technologiesneed to be updated so that they can take full advantage of the new features and functions of the new technologies.
Do you follow the new technology?
Yes, of course. For a programmer, following new technology is almost a job requirement. In this buisiness, you lag behind if you don't learn something new everyday. Closely tracking new trend and constantly updating my skills has become my habit. Such habit, I believe, is essential for a programmer to stay at the cutting edge of technology.
(I regularly read computer magazines like PC World, Computer World. Also, I have in the past few years built up a network of friends who work in various computer firms, and with whom I keep frequently communication. From these people, I can get the most recent news of technology I need.)
What is your age?
I have just reached forty. I have had a good education and have accumulated solid work experience from my past jobs. The more I have accomplished, the more effective I become. When I was just starting out, I was full of enthusiasm. Now, I am equally energetic, but more efficient, because I know where to find the resources I need and how to work with different kinds of people.
What kind of hours do you like to work?
Basically, I can work day and night and have no time preference. I am flexible to whatever working hours is in your company. Overtime is not a problem for me. I understand that sometimes we need to put in extra time to meet the deadline.
If you could change any past decisions, what would you do?
Looking back, there are many things I wish I would have done differently. For example, after I got my Master degree in Computer Engineering, I worked as TA and RA at UMass for a period of time. In retrospect, that of course was a mistake because I should have started my programming career right away. I think it is a good habit to frequently reflect on one's past so that it can be a guide for future.
Will you consider relocation?
Definitely, yes. One thing great about relocation is that you get chance to meet new people and experience different lifestyle. Of couse, relocation always contains elements of uncertainty, but it is worth the risk, because it offers an opportunity to learn and advance. All I need for relocation is a few days' notice, and I'll be ready.
How do you deal with conflict with your colleague? Do you get along well with co-workers?
I always treat my colleagues with great respect. But occasionally, I will run into conflict with them. When that happens, I do not easily back down. But I will try to be fair and reasonable. For me, it does not matter who is right, but what is right.
Yes I generally do. But occasionally I might run into a conflict with someone. When that happens, I usually focus on what the conflict is about rather than on personalities. I think that approach helps me maintain a respectable relationship with anyone, and often leads to resolution.
Give me an example that you solved conflict with your colleague.
At my last job, I had some trouble with one of my colleagues. He is a fairly good programmer. But one thing about him really bothers me – he has a habit of using curse word. At first, I don't know how to deal with him, since he is my peer, not subordinate. But finally I still sit down with him. I explain to him that while the atmosphere of the company is casual, and informal, the rule of civility still applies. Besides, verbal obscenity at workplace is a form of harassment, and therefore forbidden by law. He apologizes for his behavior, and drops his bad habit. This incident teaches me that constructive criticism is a way of maintaining a healthy relationship with co-workers and often lead to a solution of conflict.
Give me a description of all the skills you have:
C, C++, VB.NET, ASP.NET, ADO.NET, HTML, JavaScript, SQL, XML, PHP,MS SQL Server, MySQL
Design Software: Visual Studio .NET, Dreamweaver, Photoshop ,Windows, UNIX
.Net: I spent my past one and half year studying .net, and I think I have grasped the technology. I have read a pile of books on the subject.
Visual Studio 1.1 &2.0: In my study I use Visual Studio 2005 Express Edition as development tool. I am thoroughly familiar with this IDE.
C# and VB.Net: VB.Net is my language of choice. Since I am versed in C++, I have no difficulty reading C# code. C# is very similar to C++ in syntax and structure.
ASP: Several projects I developed in my last job use ASP. I am familiar with its five major objects: response, request, server, session, application.
Web services: Web service is one focus of my study. I know how to create web services, how to publish and how to consume web services. Also I understand WSDL which describes the web services and SOAP which is the protocol used to send request and receive result.
XML: I am familiar with this language. The course project RSS reads channel information from an XML file through internet. Then the information of each node in XML file is read and stored into database. XPath is used to find the node.
Java: I learned Java a number of years ago, but never have had chance to use it. Since I am familiar with C++, I can read Java code without difficulty.
Javascript: This is one of the languages I am most familiar with. I use Javascript to validate the user input.
PHP: I developed a dating web site use PHP and mySql. I am familiar with the PHP functions that are used to access database.
You have a lot experience in web development, why do you want to do this non-web job?
It is true that I have worked as web designer in my last job and accumulated some experience in this field. But my interest and experience is not limited to web designer. I am versed in programmer in C and C++ under UNIX environment. And I am familiar with .Net. I like new challenge. As a quick learner, I believe I won't have difficult to make the transition. I have been web designer for more than six years. It is time to move on, and try something new.
What have you been doing since you returned to the US?
I have spent my time visiting friends and sight-seeing. Before I immigrated to Canada, I lived in Amherst of Massachusetts for five and half years. I have many friends living in this area. And they are all eager to see me again. Massachusetts is a beautiful place. Of course, I also did some reading and kept updating my computer skill. As a programmer, this has become my habit.
What kind of sector do you look for?
First Choice: I am looking a position that can utilize my .Net skills. There are two kinds of projects I like to work on. One is web-based .Net application. Another is window-based .Net application. And I have no preference in terms of the size or specialty of the company.
Second Choice: I am looking a position that can utilize my C++ skills. I am interested in working on projects using C++ under UNIX environment. And I have no preference in terms of the size or specialty of the company.
What kind of position do you look for?
First Choice: I have had three years of experience with .Net development. So my focus and interest is to find a position of .Net developer. From the research I have done, I find that .Net is very popular. Many companies are updating their systems in order to take advantage the new features and functions of .Net technologies.
Second Choice: One of my strongest skills is C/ C++. I am looking for a position of C/C++ programming under UNIX environment.
How come that you have been out of work for so long?
I have worked continuously in my last job for more than six years. So after I left Rainbow, I took an extended vacation. I did some traveling. Recently I returned to the United States. I have settled in Boston, and now I am actively looking for job.
(I have been out of work for a while. During this period of unemployment, I refreshed the skills I learned in school, like C and C++. And I also learned some new skills like Web Service and C#. So no time has been wasted. It has been a habit of mine that I never stop learning and updating my skills so that I can always stay on the cutting edge of technology.)
Tell me about your job.
In my last job, I worked as web programmer. My primary duty is designing and coding web sites using Macromedia Dreamweaver. Occasionally, I also did graphic design using Adobe Photoshop and Macromeia Flash. I developed a number of web sites, and through these projects, aquired the basic web-developing skills. (The job requires programmers to deal with customers directly, So in addition to programming skills, I also learned how to serve customers.)
Can you be more specific about what you exactly do as a front-end web developer?
My job as web designer includes: Translating customer’s specification into web page layout. Designing table to give web page its structure. Creating CSS to define the web style. Working with graphic designer to embed graphic image and animation within web page. Coordinating with back-end programmer to output data in specified format. Writing Javascript code to validate user input, and handle event. Dreamweaver is used as IDE.
Can you give a brief description of all those web sites you designed in the six years working as web developer?
There are three kinds of projects I developed in my last job.
The first kind is web site for manufacture. This kind of web site displays all the products the company makes both graphically and using text, and it provides details on after-sale services. (From the web site, the viewer can find detailed information about its management personnel, engineers and skilled workers.)
The second kind of projects I developed is hotel web site. One thing special about this kind of web site is that it often uses a large amount of graphic images so that the web viewers can get a vivid sense of what the hotel and its accommodations look like. (This kind of web site is often linked to many other services like airport transportation and weather forcast. )
The third kind of projects I developed is two .Net applications. One is Quiz Engine. The other is RSS Reader. They both have user-interface and are database-driven. Microsoft SQL Server is used as database. And Visual Studio 2003 is used as IDE.
Tell me a little about Rainbow Systems Inc.
It was a small firm, with about ten employees. Its specialty is web development and web maintenance. Our customers include restaurants, hotels and manufacturers.
Tell me about the .Net you know.
I have three years of experience with .Net technology. I took two Microsoft online courses: one is on window-based .Net application and the other is on web-based .Net application. These two courses gave me an introduction to the fundamental concepts of .Net framework and the basic syntax and structures of VB.Net language. I learned how to use various window controls, ASP server controls, and how to create user and custom controls.
In addition, I read a big pile of books on .Net. One focus of my study is ADO.Net that includes classes like Dataset, Dataview and Dataadaptor. Another subject that interests me is web service. In my study I use VB.Net 2003 as my language of choice.
My hand-on experience with .Net is from the two projects I completed. One is Web-based .Net application called Quiz Engine. The other is window-based .Net application called RSS Reader. I use Visual Studio 2003 as development tool. It is integrated with Microsoft SQL Server 2000. Through these two projects, I learned how to use Visual Studio and SQL Server database.
Window-based .Net Application course
This course covers Common language runtime and .Net base libraries. It introduces various window controls like Textbox, Listbox and Datagrid. One emphasis of this course is user interface: how to create controls on the form, how to read data from database, how to validate user input and finally how to write user input into database. The course also covers some advanced .Net topics like globalization and localization, accessibility and printing.
(This couse descibes fundamental concepts in the design and implementatio of window-based .net application. It covers subjects that range from .Net Framework, Common Language Runtime, .Net base libraries. Various window controls are one emphasis of the course. Another important subject is data access using Ado.Net. Assembly, application configuration and deployment are also covered.)
Web-based .Net Application.
This course covers VB.Net, CSS, and XML language. Its subjects include HTML server control, Web server sontrol, validation control. One focus of the course is web service: how to create, how to publish and how to consume web service. Another important subject is web security that deals with authentication, authorization, impersonation.
(This couse deals with fundamental concepts in the design and implementatio of web-based .net application. Its subjects include HTML server control, Web server sontrol, validation control, user control and custom control. Once focus of the couse is ADO.Net that deals with classes like Dataset, Dataadaptor and Dataview. CSS, XML, web service and web security are also mentioned.)
C++ and Object-oriented Programming.
This course uses Bruce Eckel’s “Thinking In C++” as textbook. It covered most features of C++. They include data abstraction, function overloading, iostream library, , inheritance & composition, polymorphism & virtual functions. The course also cover subjects like reference, operator overloading and exception handling.
Computer networking.
The course uses Andrew S. Tanenbaum’s Computer Networks as textbook. It provides an introduction to fundamental concepts in the design and implementation of computer networks. It covers the topics like layered network architectures, network programming interfaces (e.g., sockets) and network security, network management.
What will you do on the first day of work?
The first thing I will do is to acquaint myself with the working environment, including the people I will work with. I will take initiative to introduce myself to the colleagues. Then I will sit down with the supervisor, ask for my assignments, and get my work started without delay. (There will be no waste of time, because once you are hired, your every minute belongs to the company.)
What will you do if we hire you? (How will you contribute to the success of this company?
I will contribute to the success of your company by utilizing the expertise I acquired from work. My skills closely match the job requirements. And I am a quick learner. So it should not take long before I can start to start to produce. My past achievement has given me confidence in performing this kind of job. There is no doubt in my mind that I can make a significant contribution to you firm.
Tell me a little about your education.
I got a master degree in computer engineering from Umass. The courses I took include C++ and Object-oriented Programming, Wireless Network, Advanced Graphics, and Advanced Algorithm. They gave me a solid foundation in computer engineering. Each course has several projects attached to it. Through these projects I acquired some hands-on experience of programming in C and C++. I have a 3.9 GPA. My strong academic record, I think, reflects a commitment to excellence.
Tell me a little about Canada.
Well, Canada is a great nation. Geographically, it is as large as America. But demographically, it is quite small, with a population around 30m. Canadians are very civilized and very peaceful. People don’t fight between each other. Every citizen, whether rich or poor, is covered by free medicare. It has an exellent educaton system. It is a young country, and has great future ahead of her.
Tell me a little about Toronto.
Toronto is the industrial and financial center of Canada. Its industry is focused on wood products and automobile parts. The city attracts immigrants from all over the world. Most Torontonians are foreign-born. It is cosmopolitan, multi-cutural, and multi-ethnic city, full of color and energy.
What is the greatest achievement in your last work?
I think the biggest contribution I made in my last job is the success of persuading my boss to adopt CSS in web development. Before that, web style is defined in HTML tags. He at first reject the proposal, worrying that trying technology we are not familiar with may cause unexpected problems. Besides the old methods works just fine. I manage to convince to him by showing that the long-term benefits far outweigh short-term costs. He finally agree to my argument. This change fundamentally raises the efficiency. I count it as my most noteworthy accomplishment in my last job.
Do you mind travel?
No, not at all. I am bachelor. One good thing of being single is that you are not burdened by family responsibilities. (A bachelor is as free as a bird, and can fly whenever and wherever you like.)
So you are Canadain?
Yes. I am Canadian citizen. For a Canadian to work for an American firm, he either has to have H-1 visa, or get TN status. What is your company’s policy on this? Do you provide H-1 visa sponsorship or offer help for TN application?
Why did you leave your last job?
I left my last job after the owner sold his company. Before I moved to Canada, I used to live in the United States. I like America. (When I was in Canada, I always thought that one day I would return to America.) By the time the company for was sold, I was already Canadian citizen. So I said to myself: it is time to go back. Now I am here.
I like my last job. I left because of circumstances out of my control. The company was purchase by another firm. The new company cancelled its Canadian branch.. (I became Canadian citizen in 2004. Once a Chinese becomes Canadian, he automatically loses his Chinese citizenship. There is no dual citezenshop.)
Choice one: Just one simple reason, there was too little work, too much down time. And I hate to be idle.
Use it when you apply for small company.
Choice two: there is a great deal that I enjoy in the last job I held. But the potential for growth is limited, because the size of the company and the fact that expansion is not part of the current strategic plan.
Use it when applying for big company.
Choice three: I quit my last after four years of progressive experience. As a small firm, it provides few opportunities for career advancement. I felt that I had gone as far as I could and decided that it was time to expand my career horizons.
What does it take to be a good programmer?
First, you have to have a sharp mind. Each project demands a level of intelligence from its developers.
Second, you have to be a quick study. So that you can stay at the cutting edge of technology.
Third, you have to work hard. Nothing can be achieved if you don’t put in enough time and efforts.
I think these are the essential qualities for a good programmer.
How do you persuade others to accept your view.
I understand that difference people have different ways of thinking. They tend to approach problems from different angles. So it is natural that there should be conflict of opinion. When my view differs from that of my colleagues, I think I will be fair and objective. I will look at things from others’ perspective. If I am convinced that I am right, then I will present my case, and try to win others over to my side by reason and persuation.
____________________________________________________________________________________________________________
What do you know about this position?
From the job ads, I learned this position require applicant hoI have most of the skills this job requires. It looks like a good match.
Tell me your typical day.
The first thing I normally do is to review the work that is left from the day earlier. Then I will examine all the tasks at hand, prioritze them, and build them into my work plan. Of course, the plan itself is subject to change. When something pops up, I will make adjustment, adding new tasks or dropping tasks that has become less urgent. At the end of day, I will write up a brief summary of work progress and report it to manager.
Tell me about your last boss.
My last boss is a perfectionist. Very demanding on his employees. But on the other hand, he can read people and understand that each individual is limited. He would push his employees to their limits, but not further. He is a tough but good boss.
Once I had a supervisor who was vague when issuing assignments. He tended to mumber. I learned to asked questions so that I knew what was expected.
My boss has excellent technical skills and is very agreable in person. But his hands-off style meant that I had to be resourceful in problem solving and negotiating with colleagues.
How do you handle an upset customer?
First, I will explain that this company pride itself on the quality goods and quality services. Then, I would then assure the customer that I would do everything in my power to remedy this situation. Finally, I would listen to the complaint, track the problem to its source, and make whatever changes are necessary to satisfy the customer.
Are you over-qualified for this position?
In today's job market, you have to compromise a little bit at beginning in order to advance at a later date. I think the sacrifice is temporary if the new employee can prove that he is not only up to the job but capable of accepting more responsibility. As far as the employer is concerned, it is always a plus to hire someone with more talent than the job requires.
I may seem over-qualified for this position. Some manager may not want to hire me because they are afraid that I will be unhappy and leave soon. However, I have given this a lot of thought. I am really interested in this position. I believe I could bring to this position something others may not be able to. I prefer the location and the ability to develop a flexible work schedule. I am committed to stay with this job for at least five years. During the time, I think the position will grow in responsibly and scope. I believe you will be pleased working with me.
What special characteristic should I consider about you?
I think that I have a good attitude toward work. I approach my work with great enthusiasm, and stick to it until it is done, no matter how difficult it is. This attitude has served me well in the past. I think sucess comes to people who are not quitter, people who are willing to put in necessay efforts to get things accomplished.
Choice one: I have a wealth of knowledge I have acquired in college and from work, and I am ready to get started using all I have learned. I am already trained in new methods and techniques, so I should be able to implement them immediately. I believe I can be a productive employee.
Choice two: Stick-to-it attitude, hard working, perfectionism.
How do you deal with change?
Well, we live in a constantly change world. On the up side, change brings opportunity. The down side is that we have to keep learning and keep adapting ourselves to the new environment so that we will not be left behind and become obsolete. I think I am a highly adaptive person, progressive and open minded. And I embrace new ideas as soon as I can.
What are the reasons that you could be successful in this field?
I got a Master degree in Computer Engineering from UMass, and have worked as programmer for more years. If my education prepared me to be a programmer, then my work experience confirms that I can be good programmer. I alway like to work with computer. And programming is the kind of work I am capable of doing.
How do you deal with stress?
Choice one: A certain degree of stress can often help me to achieve peak performance. I deal with nervous feelings by immersing myself in my work. I do not actively seek stress situations. But when they occur, I use them to my advantage and rise to the occasion. I overcome stress by high efficiency.
(I thrive under pressure. Positive pressure always brings out the best in people, and makes employees more productive and efficient. A level of pressure can help me to achieve peak performance. But if the pressure is really too overwhelming for me to handle alone, then I will personally brief the manager, and propose to him alternative action plans.)
Choice two: I think that time management is an effective way to reduce stress. Good time management prioritize multiple tasks and assign appropriate amount of time to each task. Also, good time management balances work with relaxation, so that maximum efficiency can be achieved. With high efficiency, we accomplish more with less time -- that is the way to cope with stress.
Choice three: I have learned to put stress situations in better perspective than I used to do. If the stress involves the work of others, I will sit down with my co-workers, and figure out the ways to deal with issues that have caused the stress. But if the stress is result of my own workload, I will cope with it by using good time management. Also, I exercise regularly and watch what I eat, which seems to contribute to the stress.
Describe a stress situation that you have been in recently and how you handled it.
When I was Umass student, I took numerous courses each semester. Also, I had to work as TA and RA to finance myself. That was a stressfull period, because I had to juggle these things all at once. To cope with stress, I watch what I eat. Do exercises regularly. And balance work with relaxation. I find that this regimen serves me well. It raises efficency, and helps to reduce stress.
What do I look for in a job?
There are several things I value most in a job. The first is constant challenge. Without challenge, any job can become very tedious. The second is tangible results. I think there is no reward more stimulating and satisfying than a good result. The third and last is working with a team of talented individuals. I always enjoy working in a team, helping and being helped by others.
How do you deal with change? Do you adapt to change?
Well, we live in a constantly change world. On the up side, change brings opportunity. The down side is that we have to keep learning and keep adapting ourselves to the new environment so that we will not be left behind and become obsolete. I think I am a highly adaptive person, progressive and open minded. And I embrace new ideas as soon as I can.
Give me an example of how you adapt to new situations.
When I first came to to the US, I found that my English pronunciation need improvement. After I identified this problem, I acted without delay. I joined a communication-training program, from which I got tremendous help in correcting my accent. I think one should actively assimilate oneself to the changing environment, because that is the only way to survive. ( Self-isolation or willful blindness will not make the problems go away. )
Why shall we hire you?
I believe everything I have accomplished in the past few years has prepared me to perform this job. My background in computer engineering, my programming skill, and my work experience all qualify me for this job. Although I am sure that there are things to learn--there are in every new job-- I think you will find I am a quick study. I have got the skills, and have the talent to meet your needs, and I do not see any real obstacles in my way.
What do you picture yourself doing in 5 years from now?
Choice one: If I get this job, I see myself working for this company five years from now. But my job will increase at least one, probably two levels in responsibility. I will achieve this by proving I am a producer, a problem solver, and someone who meet the company's needs and contribute to the company's success.
Do you like to work as a member of a team or would you rather work alone?
Working as part of a team is one of the most important elements in a successful career. While teamwork is very important, I can work just as hard alone. Although more pressure to produce might exist, it would also prove to be a challenge. Whether I prefer to work as part of a team or alone depend on the best way to complete the job.
Are you a team player or independent worker? I am both. Insert Whole. I can work with same efficiency whether working independently or as part of a team. )
Are you a good team player? Yes I am a good team player. Working as part of a team is one of the most important elements in a successful career. I am cooperative and easy to work with. I always enjoy working with others. Working as member of a team can be a very rewarding experience. You work with people with different skills. As a result, you learn some from others, as others learn from you.
Can you work alone? Working as part of a team is one of the most important elements in a successful career. While teamwork is very important, I can work just as hard alone. Although more pressure to produce might exist, it would also prove to be a challenge. I always like challenge, and has never been daunted by obstacles, no matter how great they are.
How creative are you? How resourceful are you? Explain with an example.
I like to think of myself as a highly imaginative and creative person. I am always ready to try new approach, not bound by old method and old way of thinking. I find that creativity is highly contagious. One’s creative energy can often infect others around him and as a result engergize the whole team. (And my track records prove that. Whether working as prgrammer, teaching courses or doing research, I was often faced with seemingly insurmountable obstacles, and always overcame them with great ingenuity. )
Example: When I worked as telescope designer. One technical difficulty we faced was that the software we used in optical design had serious limitation. It could minimize the aberration, but could not achieve the optimal wave pattern at the same time. It was a big technical challenge, and no one at the time had a clue as to how to tackle it. I solved the problem by combining aberration and wave pattern into one function, and run the code inside the software. This innovative breakthrough significantly improved the optical performance.
Describe for me your favorite project.
I developed a number of web sites in my last job. It is hard to say which project I like most. But if I had to pick one, I would choose the web site of Sanjiu Technology Development Co. This project is special for me becaue I developed it all by myself, from graphic design to programming. All the other web projects were developed jointly by a team of which I am simply a member.
Why do you think we shall hire you instead of others?
I believe you have interviewed many qualified candidates. While other candidates may have similar skills, qualifications as mine, I like to think that I have more enthusiasm for this job.
How do you deal with constructive criticism?
I welcome any constructive criticisms because they can help me to identify where I need improvement. People around you are often better judge of your work than yourself. Rather than rejecting criticism, I often in fact solicit suggestions and comments from my colleagues, so that I can have continued growth.
(I will always treat opinions from my colleagues with great respect. If the feedback is positive, I will take it as a compliment and an encouragement. But if it is negative, I will examine my own work, trying to find the source of problem, and fix the problem without delay.)
Describe for a recent problem you solved.
When I was UMass student, I worked as teaching assistant. One semester, my assignment was teaching a physics lab. I found that some of my students could not submit their lab reports on time. In order to fix the problem, I announced to the class a new policy, according to which certain points would be deducted as penalty if a lab report were handed in after deadline. This measure immediately solved problem.
Why did you choose to come to UMass? What would you say about UMass to your friend?
Well. Umass is a great school. Its education is first-rate. Its computer engineering program is particularly strong. The school is located at the beautiful Amherst. The school environment is safe and clean, and local people are civilized and hospitable. You can’t think of a more perfect place to study and do research. Those are the reasons I chose Umass.
What was your biggest mistake you made?
I suppose every one made some mistakes in their life. I am fortunate that no mistake I made in the past had any long-lasting consequences. Most of these mistakes are due to lack of experience. Every time when a mistake is made, I draw some lesson from it, so the same mistake will not be repeated in the future.
Well, there are some mistakes being made in my past. But they are all minor mistakes. Not worth mentioning. All I can say is that those mistakes won't be repeated in the future.
Mistake: Several years ago, I went to Foxboro to attend an soccer match. Since soccer is not popular in the US, I didn't order the ticket in advance, figuring that not many people would be interested in the match. This turned out to be a huge mistake. By the time I got to the stadium, all the tickets had been sold out. Although much time have past since then, this incident still stick in my mind. It teaches an important lesson: Never assume anything..
What have you learned from your past mistake.
Numerous things. For example: If you are wrong, admit it. Before do something, plan carefully. Do not promise more than you can deliver. These are some of the lessons I have drawn from my mistakes.
Are you a good time manager?
I consistently meet deadlines. When circumstances beyond my control interfere, I re-prioritize my tasks so that I can get right back on track.
What is your definition of leadership? How do you rate yourself as a leader?
A good leader knows where to lead his people. He creates vision and make plans to realize it. A good leader knows how to read people. He understands that each individual is unique and adapt his approach to that uniqueness. A good leader in firm and determined, and never give up until everything is done. This is my definition of leadership.
Name two areas that you plan to improve upon.
I am a programmer. I have plenty of experience in programmer, but don't know much about documentation and test of software. I like to fill my gaps in these two areas if I have chance.
Name two values that are most important for you.
Hardworking and effectiveness are two values that I cherish most. Nothing can be achieved if you don't put in enough time and efforts. While working hard is necessary is necessary, working effectively is equally important. In computer programming, what counts is not how many hours you spend, but how many quality products you deliver.
Are you a good communicator?
I like to think that I have good communicating skills, which I have greatly improved in the past years. I learned the importance of the quality of voice, and try to sound as enthusiastic as possible. I choose my words carefully, and pay close attention to others' reaction.. Communication is a bi-directional process. We can't communicate effectively unless I am a good listener.
How do you rate my interviewing skill?
This has been a challenging interview. From this side of the table, I have to admit that I am an amateur in interviewing. Your questions are focused and I hope I have responded well. How do I fit in the profile of the person you are seeking to hire.
What other careers have you considered?
When I was undergraduate student, I majored in Physics. Physics is always fun for me. But when it comes to career, I find the computer industry more attracts me. There are tremendous opportunities in this field. I want to spend my career in an industry where things are changing and developing, So decided to change my career from physics research to computer programming.
What kind of manager do you like to work for?
A successful manager needs to be able to analyze situation , determine appropriate response, and take action. Most important, though, is a person's ability to read people. Each employee is unique. Knowing that and adapting your approach to one that will work is what a successful management all about.
What was your most difficult decision? How did you make it?
The decision to leave China and come to the United States was not easy for me, because I worred that I might have difficulty adapting to the new environment. But after careful consideration, I still took that critical step, because they are more opportunities in the US, and greater potential for advamcement. Now looking back, I am glad that I made that decision. All the benefits resulting from the immigration far outweigh the costs involved.
What kind people will you hire for this position?
I think a qualified candidate for this position should have depth of knowledge, a track record of success and clear goals and concrete plans to realize them.
Why do you choose software engineer as your career?
I always enjoy working with computer. I choose SW as my career because I know I can succeed and make a good living. The computer industry attracts me. From the research I have done, there appears to be tremendous opportunity in this field. I want to spend my career in an industry where things are changing and developing. And I want to make a contribution to that change and development.
What do you think you may not like about working for our company?
One thing that concerns me is getting lost in the crowd, because this is a large firm. I work hard and I know I will make contribution. I understand that I will have to spend time to learn the orgnization so that I won’t feel lost, so that my contributions are noted by managers.
How would employees’ work performance be evaluated in your firm?
What aspect of a SW job would you find unattractive?
I chose SW as my career because I know it will be interesting and financially rewarding. At the same time, I know that every job has its drawbacks. The thing I least like about SW: when you work with other people on a same project, if you finish your part of the project earlier, you have to wait; but if you lag behind, you will have to work under great pressure because other people are waiting for you.
Do you get along well with your boss?
I treat my superior with great respect. I show my respect not just by following his instructions, but by activly seeking his guidance. But at the same time, I do not hesitate to voice my own opinion, even when it differs from that of my superior. I think candor is as important as respect in a successful relationship between a superior and a subordinate.
Describe a most difficult task in you job.
One difficult task I can think of is that one semester I was assigned was teaching a physics lab. This really was a challenge for me. The reason is that I was afraid of public speaking. To overcome the fear, I spent plenty of time on rehearsal, and found that more I practiced, the more comfortable I felt. That teaching experience gave me gain confidence in public speaking, which seems to scare many people.
Did you have got any awards?
When I was in high school, I participated in national maths competition, and was rewarded. Maths is one of my passions and interests.
What is your biggest disappointment in life? What is your biggest failure?
I am fortunate that I have had very few disappointments in my life. But if things do not go my way, I never let myself be frustrated by temporary setback. I think the right approach toward adversity is to confront it with a positive and optimistic attitude.
Well, one way to deal with disappointment is to understand that it is part of our life. No one's career is a straight line. On the flip side, we should see that setbacks and adversity could be a test of our will and determination. We gain strength and confidence by overcoming them.
Failure: When I was teenager, my dream was to become an athlete. I joined a training program, but soon found out the I could not compete with other trainees. I realized that I simply do not have the talent for sports. Since then, I have changed my mind and found the profession in which I have competence. That is programming.
How do you handle details?
I think that attention to detail can make difference between acceptable results and excellent results. Building in quality control from the start of a project is a way to ensure that the project has the best possible outcome. I believe more careful you are in the early stages of a project, the less likely you will have problems in the later stages.
What are the most important rewards you expect from job?
What is important to me is that the job I take is a good match. By that I mean it will allow me to do what I do well -- thus giving me a sense of satisfaction. I also want a job that demands that I stretch myself beyond my current level, forcing me to develop
What motivates your most in a job?
Choice one: A desire to succeed. There is nothing motivating me more than that.
Choice two: What motivates me most in a job is the nature of the work. I really enjoy my work, especially I can the results. I tend to focus on the outcome rather than duties and responsibilities.
Do you like to compete?
Yes, I do. For me, winning competition is one of the biggest satisfactions in life, because it always provides me with an opportunity to prove myself. But more important, I like competition because it also gives us a chance to show our best nature: fair play, respect for your opponents, and graciousness in winning or losing.
Why have you worked for that company for so long?
I believe in serious, long-term commitment. Hopping from job to job frequently is not just a waste of time, it also shows a lack of seriousness in purpose. When I was accepting the job offer, I promised to the employer that I would stay with his firm for at least three years. And I can say that I have kept that promise.
Greatest personal achievement.
I quit smoking this year.
The idea of a perfect job.
Choice one: The ideal job would be one in which I would be allowed to fully use my talents, one in which I would be given opportunity to work on important projects and eventually given responsibity to head up my own team. I work well in group settings and enjoy taking initiative in developing large and complex projects.
Choice two: My ideal job would offer challenges each day. I would enjoy a great working relationship with the rest of the staff. My job would contribute to the company and help raise profits. How does this position fit in with my ideals?
How do you rate your presentation skill?
I read somewhere that public speaking is the number one fear of people in this country. I figured that if most people were so scared of it, mastering the its skills would put me strides ahead of the competition. So I do the presentations every chance I get and find that more I do them, the more comfortable I feel, and the better I get.
What are your feelings about a large company?
I welcome the opportunity to work in a large, developed, well-known organization such as this. The resources and the potential for advancement in a large organization are not available in smaller companies. I'd be proud to add my skills and abilities to the excellence that flourishes here.
What are your feelings about a median company?
Medium-sized companies have emerged from their growing pains and are more secure in their markets than smaller companies. Yet, they have not become large and impersonal. They are still able to respond quickly to change and accept the individuality that fosters innovation. This gives employees a sense of not being too far away from the decision-making processes.
What are your feelings about a small company?
The advantage of working in a company of this size is that ordinary employee may have chances to participate in the decision-making process. Such hands-on involvement brings a sense of accomplishment not available in a larger, more established organization. Small companies are able to respond quickly to change and accept the individuality that fosters innovation. From the research I have done, this company is going places; I would like to travel with it to the top.
Are you risk taker or safe player?
Well, risk taking is unavoidable in today's business world. Although I follow the company's rules and regulations, I like to think myself as a risk taker. However, I am not imprudent or reckless. I only take those risks that are necessary to achieve our goal.
Why change from physics to computer science?
Well I like both physics and computer engineering. Physics is always fun for me. But when it comes to career, I find the computer industry attracts me more. There are more opportunities. And I want to spend my career in an industry where things are changing and developing,. And I want to make a contribution to that change and development.
What is more important for you, salary or job recognition?
For me those things are inseparable. Although I am not obsessive with money, I assume that with the advancement and job recognition will come greater financial reward.
Is high GPA an indicator of success?
Although managing college study is less complex than a demanding job, I believe there is a correlation. To me the most important thing about a strong academic record is that it reflects a commitment to excellence.
What would you do when you face an obstacle?
When I face an obstacle, the first thing I do is to take a step back so that I can look at it more clearly and objectively. Then I will think and figure out a way to overcome the problem. Next, I will present my plan to people that are involved in the project, and incorporate their input. Finally, I implement the plan. One thing I never do when facing an obstacle is ignoring it, because that will never make it go away.
How do you make a decision?
First I will weigh all the options, assess their risks and benifits. The next I will do is to present my analysis to my colleagues and incorporate their input. Finally, I will make my decision. Once decision is made, I will stick to it until I get the result.
How do you create a plan for your department?
I believe planning is one of the most critical skills a manager can have. The key is using a systematic process. First, you need to review and analyze the input. Once you understand what you are working with, you create a plan with goals and objectives. Next you implement the plan. Finally, you evaluate how things are going and make adjustment if necessary.
How important is job security for you?
I today's business world, job security has become a thing of past. Hi-tech industry is especially volatile. But on the other hand, I understand that as long as I am make a meaningful contribution for company, my job is as secure as it can gets. I will increase my job security by proving that I am a productive and valuable employee. And I would not expect my employment to continue should I become expendable.
How would your reference say about you?
My reference will not just attest to my skills, experience and achievements. It will also, I believe, openly endorse my application for this position.
What is your earning potential in five years? How important is money for you?
I believe my talent can earn me a decent living; that is why I am applying to a prestigious company such as yours. I plan to make enough money to live comfortably and am willing to do what it takes to ensure that I am well paid throughout my career.
How hard do you work?
For me the question is not how hard I work. If I have been given an important assignment, I work as hard as necessary to achieve the desired results. The question for me is how smart do I work-- that is what can I do to make the completion of task as easily and smoothly as possible so that I can move on to other things.
How should superior-subordinate interact?
I believe that a clear communication through hierarchy of an organization is critical to the organization's functioning. I'd like to think I've developed good skills in that area. In terms of superior-subordinate relationships, I think it is most important to realize that each person and each relation is unique. The best approach for me is to begin with no assumptions and see how the relationships evolve.
Compare your oral skill with written skill?
It seems that organizations are more than ever dependent on the ability of employees to be articulate both orally and in writing. I constantly take advantage of opportunities to develop both my oral and writing skills. These days, I think they are vitally important skills for anyone expecting to succeed in the business world.
______________________________________________________________________________________
What did you least and/or most enjoy about your last job?
My last technical job is working as telescope designer at UMass. The job requires both computer expertise and the understanding of some complicated physics principles. I enjoyed immensely the technical challenge in my work
But my work involved large amount of calculation. Often I had to wait for several days before I could get the results of calculation and proceed. That waiting period I liked least.
How did you manage if you worked for a company in China while living in Canada?
Like US, Canada requires its permanent residents to live in Canada for a certain amount of time every year. Every year I spent around six months working in China while spending the rest of the year in Canada. I used the period living in Canada to make preparation for the projects I would work on, and to keep updating my skills. So no time was wasted.
Tell me about China.
China is developing country, but has a booming economy, with annual growth rate as high as 10%. The country is currently undergoing dramatic transformation from communism towards capitalism. It has many serious promblems, but has tremendous potential and promise. (Still not rich, but with living standards keep improving, people are happy and enjoying their life. )
Tell me about Shanghai:
Shanghai is the industrial and financial center in China. It is a city of skyscrapers. It attracts large amount domestic and foreign investmen . The city is fast growing, and is on the way to become the biggest industrial city in EuroAsia continent.
(Where you go, you can find that roads and bridges are being constructed. The city looks like big construction site.)
Why didn't you work in the past years
I spent five years off to raise my son, who is now in kindergarten. It was a difficult decision for me at the time, I decided I wouldn't be able to commit myself 100 percent to my career with such tremendous responsibilities at home. And I didn't think it would be fair to my employer to give less that my commitment. I believe it was the right for me at the time, but now I feel refreshed and ready to devote myself full-time to my career.
What kind of situation gets you down?
I think the thing that bothers me most is when a problem lingers too long. I do not think there is room in any successful organizations for unresolved problems. I like to find solution as quickly as possible so we can get on with the business of the organization.
How does your education and work experience related to this job?
As you can see from my resume, I have a master degree in Computer Engineering from the United States. I took a series of advanced computer courses like Advanced Algorithm, Computer Graphics and Networking. One summer, I interned as programmer in a company near Boston. I had chance to work in a team of professional programmers and learned how play a role in the team. All the computer expertise I got in school and from work is directly related to this job.
In looking back, what do you feel you got out of your education?
Many of the subjects I studied in school specifically apply to this field, including Computer Graphics, Network, and Operating Systems. But what school really taught me that would be useful to my career was how to solve problems, how to apply myself, and finally, how to set a goal and achieve it.
How do you deal with theft of co-workers? (How to deal with co-workers bringing things home?)
I myself strictly abide by company rules and regulations. (If I find my co-worker bringing company property home, I think what I will do is to sit down with him, asking him whether what he took home is for personal use. If the answer is affirmative, then I will explain to him that what he did is not just against company policy but constitutes a crime. If necessary, I will bring this to the attention of my employer.)
If I find other employees commit theft, I think I will bring this to the attention of my employer. Theft is not only a violation of company policy, it also constitutes a crime. Such employee deserves disciplinary action. (There is no substitute for honesty.)
Why did you decide to immigrate to Canada? Will you move back to the state in future?
There are two reasons l chose to immigrate to Canada. One is that Canada has the highest environmental standards on the world. The other reason is that I enjoy living among and working with people with different background. And, as we all know, Toronto is the most diverse city in North America, and also the most secure city, with low crime rate.
How can what you have learned in college benefit the current job?
I have a wealth of knowledge I have acquired over the past four years in college, and I am ready to get started using all I have learned.
My college education was a very full time job. With classes, exams, and projects, I worked constantly. I had to make every hour count, so I became adept at time management and planning.
No one supervises you in college. You must be self-disciplined and budget your time.
I have the latest training and skills and the willingness to get the job done
What did you least and/or most enjoy about your last job?
My last technical job is working as telescope designer at UMass. The job requires both computer expertise and the understanding of some complicated physics principles. I enjoyed immensely the technical challenge in my work
But my work involved large amount of calculation. Often I had to wait for several days before I could get the results of calculation and proceed. That waiting period I liked least.
Looking back over your years in College, what do you wish you had learned that you did not learn?
I enjoyed my five years of study at UMass and I am happy with the way I've grown there. Still, as I look back, I wish that I had made better use of the summer breaks. I spent most of those summers on campus. But I could have worked as intern in computer firms, like some of my classmates did. If I had done that, I would have acquired some valuable hands-on experience.
What were you doing after you got your degree?
After I got my MS degree, I taught physics lab for several semesters at UMass. During the same period, I also did some physics research using computer simulation. Then I worked as telescope designer for one year before I immigrated to Canada.
What qualities do you think important when hiring?
I think the 21st century offers some real challenge for corporations. If I were doing the hiring, regardless of the position, I would look for several things. I'd want somebody who is not afraid to make decisions, yet is a team player. I'd want somebody who appreciates the implication of worlds market, yet not intimidated by global competition. Finally, I'd want somebody who realizes that quality and service are the keys to the company's success.
Which course do you like most?
I took two Graphics courses, which I liked a lot. In these two courses, each student was required to finish eight projects. Since I had no much programming experience before taking these courses, these projects are really difficult me. I completed these two courses and learned how to program in language C.
Which course do you like least?
Actually I enjoy most of the courses I took. But some courses like AA are theoretically oriented. You can hardly get any hands-on experience from this kind of courses. I find I like this kind of course least.
Why give up Ph.D.?
I was in the physics Ph.D. program at UMass. But I gave up physics Ph.D., because my goal was to become a programmer. And I already had a Master degree in Computer Engineering.
(You need Ph.D. to become a professor. But for a programmer, a Master degree is good enough. )
_____________________________________________________________
Describe our personality.
How long will it take for you to contribute to the company?
Give me an example that you were criticized.
How do you deal with colleagues you dislike?
Name your three qualities that contribute to your success. Name your three qualities that need improvement.
What is your greatest crisis in your life?
What is your most difficult situation you have faced?
What is the biggest change you have had in your last ten years?
What is the biggest lesson you have learned in your last ten years?
Who have had the biggest influence in your life?
What is the most recent book you have read or movie you have watched?
Do you have a drive's license?
How do you persuade others to accept your view?
What are you non job related goals?
What are doing for your personal growth?
What is your opinion of your last boss?
What are your relationships with your last three supervisers?
Tell me a tale about yourself?
How resoureful are you?
Are you a team player?
Describe a team project, and your role in it.
How long are you going to stay with this firm if hired?
Give me an example of your being angry.
What determine the personal growth with company?
How did your last boss help you grow?
What do you want to do with your life?
Will you still work here if you win a big lottery?
What books and magazines do you like to read?
How do you view your own progress in your career?
What is the most important aspect of your last job?
What is the biggest frustration of your last job?
What is your ideal boss?
concise: no repetition;
informative: give interviewer something that he does not know about you before.
surprise: put in something unexpected by the interviewer.
colorful: avoid stuff that is boring.
C++:
A: What is polymorphism?
Derived classes can be cast as the type of their base class. They share shame interface, but have different implementations. They can be treated as the same in code.
B: What is encapsulation?
In C++ the implementation of an object is seperated from the interface. Only the interface is accessible to the user without knowing the implementation because the data can be made private.
C: What is event?
A notification raised by a control or component that a specified condition has occurred.
D: What is globalization?
Applying culture-based formatting to existing data, for example, using culture-specific currency symbols and formatting.
E: What is inheritance?
In object-oriented programming, a new class is created that incorporates and extends all of the data and functionality of a base class.
F: What is operator overloading?
In Visual C#, defining custom behavior for an operator when interacting with custom types.
G: Wht is reference?
A reference is an alias or an alternative name for an object. All operations applied to a reference act on the object to which the reference refers. The address of a reference is the address of the aliased object.
H What is virtual function?
A virtual function is a function member of a class, declared using the "virtual" keyword. A pointer to a derived class object may be assigned to a base class pointer, and a virtual function called through the pointer. If the function is virtual and occurs both in the base class and in derived classes, then the right function will be picked up based on what the base class pointer "really" points at.
I: What is abstracti class?
Class that cannot be instantiated but is used as a base from which other classes can be derived.
(In Microsoft Visual Basic .NET, abstract classes are declared using the MustInherit keyword.)
S: What is abstract member?
A member of base class that cannot be invoked, but instead provides a template for members of a derived class.
(In Visual Basic .NET, abstract members are declared using the MustOverride keyword.)
W: What is vtable?
Every object of a class with virtual methods has a pointer to the class vtable. The entries in the vtable point to the actual methods for the class, no matter where they are in the class hierarchy.
Z: What is heap?
A heap is a storage device that use first in first out. Global variables (storage class external), and static variables are allocated on the heap.
M: What is stack?
A stack is a Last In First Out (LIFO) storage device where new storage is allocated and deallocated at only one ``end'', called the Top of the stack. The stack is where memory is allocated for automatic variables within functions.
N: What is copy constructor?
A copy constructor is called whenever a new object is created from an existing object or a function call uses the value of an object as argument.
R: What is inline function?
Inline function that is defined inside class. When inline function is invoked, the compiler will replace the function call with a copy of the function body. If the function is small, it can increase the speed.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Web Application:
1: Introduction to Web Programming
A: What is asp.net?
ASP.NET is the the portion of the Microsoft .NET Framework used to create Web applications and XML Web services. ASP.NET is an evolution of Microsoft Active Server Pages (ASP).
B: What are the strengths of asp.net compared to asp?
ASP.NET has the benefit of access to compiled languages, such as VB, C++, and C#.
ASP.NET allows objects and output to be cached, which should increase speed.
AsP.NET supports five kinds. HTML server controls, weB server control, validation controls, user controls and custom controls.
ASP.NET supports forms-based user authentication, including cookie management and automatic redirecting of unauthorized logins.
ASP.NET allows for user accounts and roles, to give each user (with a given role) access to different server code and executables.
Configuration of ASP .NET is done with plain text files. They can be uploaded or changed while the application is running.
2: Creating Web Form Application
3: Working With Web Object
A: How does web application maintain state information?
Query strings: Use these to pass information between requests and responses as part of the Web address.
Cookies: Use cookies to store small amounts of information on a client
View state: ASP.NET stores items added to a page' s ViewState property as hidden fields on the page.
Session state: Use Session state variables to store items that you want keep local to the current session
Application state:Use Application state variables to store items that you want be available to all users of the application.
4: Creating a User Interface
A: How do web application navigate between forms?
Response.redirect, server.transfer, and server.execute, window.open, hyperlink
B: How do asp.net validate data?
ASP.NET Validation Controls
RequiredFieldValidator:Check if a control contains data
CompareValidator:Check if an entered item matches an entry in another control
RangeValidator:Check if an entered item is between two values
RegularExpressionValidator:Check if an entered item matches a specified format
CustomValidator:Check the validity of an entered item using a client-side script or a server-side code, or both
ValidationSummary:Display validation errors in a central location or display a general validation error description
5: Storing and Retrieving Data with Ado.net?
A: What is the strengths of ado.net as compared to ado?
B: What is interfaces?
In the context of object-oriented programming, an interface is a contract that defines the members that a group of classes provides. Once you implement a particular interface in a class, instances of that class can be used for any argument or variable declared as that interface.
C: What is impersonation
The process of assigning one user identity to another user. ASP.NET uses impersonation to authorize anonymous users to access resources on the Web server. By default, anonymous users impersonate the ASPNET user account.
D: What is exception handling?
The process of dealing with unusual occurrences within code so that they do not cause the program to crash or lose data.
E: What is exception log?
A record of exceptions that occurred while an application was running.
F: What is overriding?
In the context of object-oriented programming, the programming technique of replacing a member inherited from a base class with a different member in the derived class.
D: Tell me about transaction.
A group of commands that change the data stored in a database is treated as a single unit. Change of data is made into database only when all commands are executed successfully. In this way, transactions maintain the integrity of data in a database.
(The transaction assures that the commands are handled in an all-or-nothing fashion—if one of the commands fail, all of the commands fail, and any data that was written to the database by the commands is backed out. )
6: Catching and Correcting Errors.
7: Advanced Web Forms Programming
8: Maintaining security
A: What is authentication?
The process of determining the identity of a user. In effect, authentication validates that the user is who he says he is.
B: What is authorization?
The process of granting access privileges to resources or tasks within an application. Applications typically authenticate users and then authorize them based on their identities or roles within an organization.
C: What is scalability?
The ability to add capacity to an application as user demand increases.
D: What is Overloading?
In the context of object-oriented programming, the programming technique of providing versions of a method that takes different types of arguments.
C: What is managed code?
Code that runs under the common language runtime. It contains all the versioning and type information that the common language runtime needs to run the application.
(The common language runtime takes care of many tasks that would have formerly been handled in the application' s executable. Managed code solves the Windows programming problems of component registration and versioning (sometimes called DLL Hell) since managed code contains all the versioning and type information that the common language runtime needs to run the application. The common language runtime handles registration dynamically at run time, rather than statically through the system registry, as is done with applications based on the Component Object Model (COM).)
D: What is Windows authenticaiton?
Windows authentication uses the security features integrated into the Windows NT and Windows XP operating systems to authenticate and authorize Web application users. You use windows anthentication by setting the web.config file's anthentication mode to windows. When user access the web site using WA, a login dialog will appear. The users use the username and password that The windows operation has to login
E: What is Form authentication?
Forms authentication automatically displays a designated Web form to collect user name and password information. Code associated with that Web form authenticates and authorizes users based on a users list stored in the application' s Web.config file or in a separate user database. .You use windows anthentication by setting the web.config file's anthentication mode to forms.
F: What is Passport Authentication?
Passport authentication identifies users via Microsoft' s Passport single sign-in service. Microsoft Passport is meant to provide Internet users with a single identity that they can use to visit a wide variety of Web sites that require authentication. Information about the user is available to your application through a profile that is stored with Microsoft.
F: What is caching?
The process of storing frequently requested documents in the server' s memory to speed up access to those items. Web applications provide automatic caching features through the Microsoft FrontPage Server Extensions and manual caching features through the Cache object.
9: Building and Deploying Web Application
A: What is web farm?
Web farm Web application running on multiple servers.
B: What is web gardem?
Web garden Web application running on a single server using multiple processors.
10: Testing Web Application?
11: Creating Custom Web Controls
A: What is web User Control?
Web application project file with the .ascx filename extension that combines one or more server controls into a single, visual component that can be used on Web forms.
B: What is web Custom Controls?
Custom control is a class that inherits from system.control. It can be compiled along with other control classes to create an assembly (.dll) that contains a custom control library. Once created, the custom control library can be loaded into Visual Studio .NET and used in the same way as the standard server and HTML controls.
12: Working with Multimedia
13: Formating Web Application Output
A: What is CSS?
Cascading style sheets (CSS)are files that define the styles that are applied to elements on a Web form or HTML page
B: What is certificate authority?
An independent third-party that provides server certificates to enable secure communications across the Web through the secure sockets layer (SSL). These server certificates must be purchased and installed on your Web server to use secure sockets layer (SSL) and the HTTPS protocol.
C: What is cookies?
A small file that a Web application can write to the client' s computer. Cookies are used to identify a user in a future session or to store and retrieve information about the user' s current session.
D: What is global assembly cache (GAC)
A special subfolder within the Microsoft Windows folder that stores the shared .NET assemblies. Assemblies stored in the GAC are shared with all other applications installed on the computer.
E: What is Globally Unique Identifier (GUID)?
A 128-bit integer that serves as a unique identifier across networks. GUIDs are used throughout Windows and the .NET Framework to identify components.
F: What is an exceptions?
Unusual occurrences that happen within the logic of an application.
G: What is localization?
The process of accommodating cultural differences within an application. Localized applications can support multiple languages, currencies, writing direction, and calendars based on the cultures that they support.
H: What is Secure Sockets Layer (SSL)?
The standard means of ensuring that data sent over the Internet cannot be read by others. When a user requests a secure Web page, the server generates an encryption key for the user' s session and then encrypts the page' s data before sending a response. On the client' s side, the browser uses that same encryption key to decrypt the requested Web page and to encrypt new requests sent from that page.
I: What is signature?
The name, parameter list, parameter types, and return type of a member.
14: Providing Help
15: Globalizaiong Web Application.
A: What is namespace?
A logical organization of types that perform related functions.
B: What is .NET Framework?
A managed environment for the development and execution of code. It consists of the common language runtime and .NET Framework base class library.
C: What is .NET Framework base class library?
A collection of object-oriented types and interfaces that provides object models to assist in the development of your applications.
D: What is XML nodes?
Uniquely named elements within an XML file. XML nodes are organized hierarchically with parent-child relationships.
E: What is XML schema?
A description of the data elements contained in the XML file. The XML schema provides the names of the elements, their types, whether or not they are key fields, and other information.
F: What is XSL template?
An element within an XSL file that provides the information used to format an XML node during an XSL transformation.
----------------------------------------------------------------------------------------------
Window Application:
1: Introduction to the .Net Framework
A: What is common language run time?
The environment in which managed code executes. The common language runtime provides just-in-time compilation, enforces type safety, and manages memory through garbage collection.
B: What is delegate?
An object that acts as a type-safe function pointer. Delegates can be used to invoke the method they point to.
C: What is DataSet ?
A class that contains an application copy of data that has been retrieved from a data source.
D: What is Data Provider?
A set of classes that work together to provide managed data access.
F: What is Microsoft Intermediate Language (MSIL)?
A low-level language that is just-in-time compiled to native code at run time. All .NET assemblies are represented in the MSIL.
2: Creating the user interface
3: Types and Members
What is property?
What is a thread
The basic unit to which the server allocates processor time. A single process can have multiple threads.
What is step in?
Moving from a calling procedure to a called procedure during debugging. Also used in reference to setting breakpoints to stop execution in a specific procedure during debugging.
Wht is step over?
Executing a procedure call as a single statement during debugging.
What is session?
The sum of interaction between an instance of a client browser and a Web application. A session begins when the browser first requests a resource from within the application. A session ends either when the browser closes on the client' s machine or when the session times out after a period of inactivity. (The default is 20 minutes.)
4: Object-oriented programmer and polymorphism?
5: Testing and debugging you application.
A: What is trace class?
6: Data Access using ado.net
7: Creaing controls using the .net Frameworks.
8: Advanced .net Framework Topics.
A: How to print?
The .NET Framework provides the PrintDocument component to facilitate printing and a host of other classes to support and configure your printer settings. The PrintDocument object encapsulates all of the information necessary to print a page. It exposes a PrinterSettings property that contains information about the capabilities and settings of the printers; a DefaultPageSettings property that encapsulates the configuration for printing each printed page;
C: What is Accesssibily?
When you develop an project, you should make your application accessible to all kinds of users, including some handicapped people. So there are several requirement you have to meet. Support Standard System Settings:
Ensure Compatibility Using the High Constrast Option
Provide Documented Keyboard Access to All Features
Provide Notification of the Keyboard Focus Location
Convey No Information by Sound Alone
9: Assemblies , configuration and security
0: Deploying your application.
A: What is ADO.NET?
The data access architecture for the Microsoft .NET Framework. ADO.NET is built around a disconnected data access model that uses a set of classes called a Data Provider to retrieve data from a data source.
B: What is assembly?
The primary unit of deployment for a .NET application. An assembly is either an executable application (EXE) or a class library (DLL).
C: What is assembly manifest?
The metadata for the assembly. It contains all of the information needed to describe the assembly to the common language runtime.
Web Service
Web Service:
1: Introductin
2: Why web service
3: Creating a basic web service
4: Soap
6: Using WSDL to Document Web Service
A:What is watch window?
When debugging, the window that allows you to examine the values of predetermined watch variables.
B: What is Web Service?
A service or component that is implemented by a Web server and can be instantiated and accessed programmatically as a component over the World Wide Web.
C: What is unmanaged code?
Code that is not managed by the common language runtime. Unmanaged code is not checked for type-safety and must be used with extreme care.
D: What is tracing?
A programming technique for recording events, such as exceptions, in an application. Tracing is used during debugging and in the testing phase of application deployment
E: What is strong name?
A name that uniquely identifies an assembly. It consists of the assembly's name, version, and culture information as well as a public key encrypted by a private key. An assembly must have a strong name to be installed to the Global Assembly Cache (GAC).
F: What is Step Into?
Moving from a calling procedure to a called procedure during debugging. Also used in reference to setting breakpoints to stop execution in a specific procedure during debugging.
G: What is implicit conversion?
A conversion between types that can be performed automatically by the common language runtime. An implicit conversion will always succeed and never pose a danger of data loss.
H: What is globalization?
Applying culture-based formatting to existing data, for example, using culture-specific currency symbols and formatting.
I: What is Graphic Device Interface (GDI) ?
In Windows, a graphics display system used by applications to display or print bitmapped text (TrueType fonts), images, and other graphical elements. GDI+ is the name given to the .NET Framework's managed implementation of the GDI.
I: What is garbage collection?
Automatic memory management provided by the common language runtime. Unused memory is automatically reclaimed by garbage collection without interaction with the application.
K: What is foreign key ?
In a data table, a column that contains a key value that uniquely identifies a record in a related table.
L: What is finalizer?
In Visual Basic .NET, the method that is called just before an instance of a class is destroyed.
W: What is explicit conversion?
A conversion of one type to another that cannot be performed automatically. An explicit conversion usually presents some danger of a failed conversion or a loss of data.
S: What is extender provider?
A specialized type of control that provides design time properties to other controls. ErrorProvider and HelpProvider are examples of extender providers.
Q: What is complex binding?
In data binding, binding more than one column to a single control. The DataGrid is an example of a control that can be complexly bound.
R: What is custom control?
A user-designed control that directly inherits System.Control.
T: What is cast?
An explicit conversion from one type to another.
O: What is boxing?
The act of wrapping a Value type, such as an Integer, inside an object so that it can be treated like a Reference type.
P: What is Step Out?
In Break mode, resuming execution of a function call until the call returns.
Z: What is Step Over?
In Break mode, executing a procedure call as a single statement during debugging.
C: What is simple binding?
In data binding, binding a control to a single data column. A TextBox is an example of a control that can be simply bound.
F: What is shadowing?
Hiding a member in a base class with a member in an inherited class that has a different signature.
D: What is satellite assembly?
When localizing an application, assemblies that contain alternate sets of resources to be used in the application for different cultures.
R: What is role-based security?
Code that ensures that users of your application have appropriate permission to access your application based on the identity of the user.
W: What is registry?
The system repository for information about a computer's settings. The registry can contain configuration information about programs and system components.
W: What is private assembly?
An assembly that is used by only one application. In .NET Framework programming, most assemblies are private assemblies.
V: What is project parent-child relationship?
In data access, a relationship between two tables wherein a record from the parent table can be used to retrieve one or more related records from a child table. A parent-child relationship can be defined by using a DataRelation object.
7: asp.net
A: What is soap extensions?
The SOAP extensions framework allows you to intercept SOAP messages exchanged between the client and the Web service. You can inspect or modify a message at various points during the processing of the message. A SOAP extension is composed of a class derived from the SoapExtension class. It contains the implementation details that are generally used to examine or modify the contents of a SOAP message. You can then define an attribute derived from SoapExtensionAttribute that associates the SOAP extension with a particular Web method or a class.
B: What are Soap encoding styles?
ASP.NET supports two distinct encoding styles, Document and RPC. Document is the default and is used primarily for document-based message exchanges between the client and the server. RPC is used primarily for procedure-based communication between the client and the server. You can select RPC by using the SoapRpcService or SoapRpcMethod attribute.
8: XML Serialization
What is XML serialization?
XML serialization is responsible for serializing instances of .NET types to XML and deserializing XML to instances of .NET types. XML serialization has default behaviors that might not be appropriate in all situations, so the .NET platform provides a collection of attributes that you can apply to .NET type definitions, variable declarations, and parameter declarations to control the behavior of .NET serialization.
9: Using remoting to build and consume web service
What is remoting?
Remoting is the distributed object infrastructure for .NET.
It makes sense to build Remoting Web services applications when you need to use a transport protocol other than HTTP, when you need to host a Web server in a process besides IIS, and when you need strong support for .NET types Remoting support well-known objects and client-activated objects..
Remoting supports two configurations for well-known objects, singleton and single instance. If the well-known object is configured as a singleton, all requests will be processed by the same object. If the well-known object supports the single instance configuration, each request will be processed by a new instance of the object.
What are the strengths of remoting as compared to asp.net
1: Discovery Mechanisms for web service
B: What is Disco?
DISCO allows you to discover the Web services running on a particular computer by providing a browse paradigm for locating a particular Web service. Recall that UDDI is a structured, centrally managed directory service. Its ability to discover Web services is company-centric. It is difficult to query UDDI to determine what Web services are exposed by a particular server.
2: Building Secure Web Service
3: Debugging Web Service
4: Scalability and Availability
A: What is SOAP?
SOAP stands for Simple Object Access Protocol. SOAP is a XML-based communication protocol
B: What is WSDL?
WSDL is an XML-based language for describing Web services and how to access them. WSDL stands for Web Services Description Language
C: What is UDDI?
UDDI stands for Universal Description, Discovery and Integration .UDDI is a directory for storing information about web services
D: What is Xpath?
It is a language for navigating in XML documents.
E: What is XSLT?
It is a language for transforming XML documents into XHTML documents or to other XML documents.
F: What is XML?
XML stands for EXtensible Markup Language. XML is a markup language much like HTML
1: SDLC
It represent structured software development models, like A. System Development Life Cycle (SDLC) Model
B. Prototyping Model
C. Rapid Application Development Model
D. Component Assembly Model
These model generally consist of:
System/Information Engineering and Modeling
Software Requirement Analysis
System Analysis and Design
Code Generation
Testing
Maitainence
2: Trigger
Database trigger, procedural code that is automatically executed in response to certain events on a particular table in a database
3: transaction
A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions. In general, a database transaction must be atomic, meaning that it must be either entirely completed or aborted.
4: stored procedure.
A stored procedure is a subroutine available to applications accessing a relational database system. Stored procedures (sometimes called a sproc or SP) are actually stored in the database.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
RSS Reader:
RSS stands for Really Simply Syndication. RSS reader is an easy way to let people know what new content has been added to a web site they are interested in without requiring them to visit the web sites on a hourly/daily basis. The RSS Reader allows users to subscribe to channel, organize channels into folders and view news items of selected channel. Users may refresh channels , and add or delete both channels and folders.
The RSS Reader grabs channel information from a XML file through internet, and stores them into the database. The user interface window display on its left side all available folders using combo box control , all channels for selected folder and all news items for highlighted channel using list box control. On the right side, the window displays the title and description for each news item using textbox control, and web content using web browser control. Menus are created to edit , delete and add folders and channels.
The database stores all the news information. They are classified into channels, and all the channels are further classified into folders based on the nature of each channel. So the database consists of three tables. One records folderID and Foldername; one record channelID, URL; and one records newsItemID and URL and title and description.
The Microsoft SQL Server is integrated with Visual Studio. You open the Database Explorer, and then create a Database for your application. Then you define the tables and add them into database you created. By draging those tables into design area, the visual studio will automatically generate dataset, bindingsource and dataadaptor for each table. And finally you bind the window controls to the bindingsources.
FolderDataAdaptor
FolderBindingSource
ChannelDataAdaptor
ChannelBindingSource
NewsDataAdaptor
NewsBindingSource..
Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
Me.DialogResult = System.Windows.Forms.DialogResult.OK
Dim URL As String
Dim aa, row, newsRow, temprow As DataRow
Dim ID As Integer = TextBox1.Text
Dim newsID As Integer
URL = TextBox2.Text
aa = NorthDataSet.Channel.NewRow
aa.BeginEdit()
aa(0) = TextBox1.Text 'ChannelD
aa(1) = TextBox2.Text 'URL
aa(2) = TextBox3.Text 'Title
aa(3) = DateTime.Now 'Updatedate
aa(4) = TextBox5.Text 'folderID
aa.EndEdit()
row = NorthDataSet.Channel.Rows.Find(ID)
row.Delete()
NorthDataSet.Channel.AddChannelRow(aa)
ChannelTableAdapter.Update(NorthDataSet.Channel)
URL = TextBox2.Text
For Each newsRow In NorthDataSet.News
If newsRow("ChannelID") = ID Then
newsID = newsRow("NewsID")
temprow = NorthDataSet.News.Rows.Find(newsID)
temprow.delete()
End If
Next
ChannelBindingSource.EndEdit()
ChannelTableAdapter.Update(NorthDataSet.Channel)
Me.Close()
End Sub
Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
Me.DialogResult = System.Windows.Forms.DialogResult.OK
Dim aa, row As DataRow ' This may not be right
Dim ID As Integer
aa = NorthDataSet.Folder.NewRow()
aa.BeginEdit()
ID = TextBox1.Text
aa("FolderID") = TextBox1.Text ' TextBox1.Text 'FolderID
aa("FolderName") = TextBox2.Text 'FolderName
aa.EndEdit()
row = NorthDataSet.Folder.Rows.Find(ID)
row.delete()
NorthDataSet.Folder.AddFolderRow(aa)
Dim numrowsChanged As Integer
FolderBindingSource.EndEdit()
numrowsChanged = FolderTableAdapter.Update(NorthDataSet)
Me.Close()
End Sub
Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click
Me.DialogResult = System.Windows.Forms.DialogResult.Cancel
Me.Close()
End Sub
Private Sub Folder_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.FolderTableAdapter.Fill(Me.NorthDataSet.Folder)
End Sub
Sub getcurrentFolderChannelNews()
Dim folderRow As DataRow
Dim channelRow As DataRow
Dim newsRow As DataRow
Dim selectedFolderID As Integer
selectedFolderID = ComboBox1.SelectedValue
For Each folderRow In NorthDataSet.Folder.Rows
If folderRow("FolderID") = selectedFolderID Then
folderHighlight.folderID = folderRow("FolderID")
folderHighlight.folderName = folderRow("FolderName")
End If
Next
Dim selectedChannelID As Integer
selectedChannelID = ListBox1.SelectedValue
For Each channelRow In NorthDataSet.Channel.Rows
If channelRow("ChannelID") = selectedChannelID Then
channelHighlight.channelID = channelRow("ChannelID")
channelHighlight.URL = channelRow("URL")
channelHighlight.Title = channelRow("Title")
channelHighlight.updateDate = channelRow("UpdatedDate")
channelHighlight.folderID = channelRow("FolderID")
End If
Next
Dim selectedNewsID As Integer
selectedNewsID = ListBox2.SelectedValue
For Each newsRow In NorthDataSet.News.Rows
If newsRow("NewsID") = selectedNewsID Then
newsHighlight.newsID = newsRow("NewsID")
newsHighlight.title = newsRow("Title")
newsHighlight.description = newsRow("Description")
newsHighlight.link = newsRow("Link")
newsHighlight.updateDate = newsRow("DateUpdated")
newsHighlight.channelID = newsRow("ChannelID")
End If
Next
End Sub
Sub updateNews()
getcurrentFolderChannelNews()
TextBox1.Text = newsHighlight.title
TextBox2.Text = newsHighlight.description
WebBrowser1.Navigate(New Uri(newsHighlight.link))
End Sub
Public Class folderObj
Public folderID As Integer
Public folderName As String
End Class
Private Sub readNews(ByVal channelID As Integer, ByVal URl As String)
'put all news items into NorthDataSet.news table. Not database
Dim a As DataRow
Dim myRequest As WebRequest = WebRequest.Create(URl)
Dim myResponse As WebResponse = myRequest.GetResponse
Dim rssStream As Stream = myResponse.GetResponseStream()
Dim rssDoc As XmlDocument = New XmlDocument
rssDoc.Load(rssStream)
Dim rssItem As XmlNodeList = rssDoc.SelectNodes("rss/channel/item")
Dim currentItem As XmlNode
For Each currentItem In rssItem
a = NorthDataSet.News.NewRow
Dim rssDetail As XmlNode
a(0) = newsMax
rssDetail = currentItem.SelectSingleNode("title")
a(1) = rssDetail.InnerText
rssDetail = currentItem.SelectSingleNode("description")
a(2) = rssDetail.InnerText
rssDetail = currentItem.SelectSingleNode("link")
a(3) = rssDetail.InnerText '"http://www.sobran.com"
a(4) = Now
a(5) = channelID
NorthDataSet.News.AddNewsRow(a)
newsMax = newsMax + 1
Next
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.NewsTableAdapter.Fill(Me.NorthDataSet.News)
Me.ChannelTableAdapter.Fill(Me.NorthDataSet.Channel)
Me.FolderTableAdapter.Fill(Me.NorthDataSet.Folder)
folderMax = NorthDataSet.Folder.Rows.Count
channelMax = NorthDataSet.Channel.Count
newsMax = NorthDataSet.News.Count
MessageBox.Show("before")
MessageBox.Show(ComboBox1.SelectedValue)
MessageBox.Show(ListBox1.SelectedValue)
ChannelBindingSource.Filter = "FolderID= '" & ComboBox1.SelectedValue & "'"
NewsBindingSource.Filter = "ChannelID ='" & ListBox1.SelectedValue & "'"
updateNews()
End Sub
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
' Create new folder
'TODO not completed
Dim a As New Folder()
a.TextBox1.Text = folderMax ' folderMax
a.TextBox2.Text = " "
If a.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim aa As DataRow
aa = NorthDataSet.Folder.NewRow()
aa.BeginEdit()
aa(0) = folderMax 'FolderID
aa(1) = a.TextBox2.Text 'FolderName
aa.EndEdit()
NorthDataSet.Folder.AddFolderRow(aa)
FolderBindingSource.EndEdit()
FolderTableAdapter.Update(NorthDataSet.Folder)
Me.FolderTableAdapter.Fill(Me.NorthDataSet.Folder)
folderMax = folderMax + 1
End If
End Sub
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click
'Edit existing folder
Dim ID As Integer
Dim row As DataRow
If NorthDataSet.Folder.Count > 0 Then
getcurrentFolderChannelNews()
ID = folderHighlight.folderID ' ToDO This is questionable
Dim a As New Folder()
a.TextBox1.Text = ID 'this textbox is dead
a.TextBox2.Text = folderHighlight.folderName
If a.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim aa As DataRow
row = NorthDataSet.Folder.Rows.Find(ID)
row.Delete()
aa = NorthDataSet.Folder.NewRow()
aa.BeginEdit()
aa(0) = ID 'FolderID
aa(1) = a.TextBox2.Text 'FolderName
aa.EndEdit()
NorthDataSet.Folder.AddFolderRow(aa)
FolderBindingSource.EndEdit()
FolderTableAdapter.Update(NorthDataSet.Folder)
Me.FolderTableAdapter.Fill(Me.NorthDataSet.Folder)
End If
End If
End Sub
Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click
'Delete existing folder
'TODO Change Folderhighlight and channelhighlight and newshighlight
'TODO Judge Whether their is folder to delete
Dim channelID, newsID As Integer
Dim folderID As Integer
Dim folderNum, channelNum, newsNum As Integer
Dim row, rowFolder, rowChannel, rowNews, temprow As DataRow
folderNum = NorthDataSet.Folder.Count
channelNum = NorthDataSet.Channel.Count
newsNum = NorthDataSet.News.Count
If folderNum > 0 Then
getcurrentFolderChannelNews()
folderID = folderHighlight.folderID
For Each rowChannel In NorthDataSet.Channel.Rows
If rowChannel("FolderID") = folderID Then
channelID = rowchannel("ChannelID")
For Each rowNews In NorthDataSet.News.Rows
If rowNews("ChannelID") = channelID Then
newsID = rowNews("NewsID")
temprow = NorthDataSet.News.Rows.Find(newsID)
temprow.delete()
End If
Next
row = NorthDataSet.Channel.Rows.Find(channelID)
row.delete()
End If
Next
rowFolder = NorthDataSet.Folder.Rows.Find(folderID)
rowFolder.delete()
'Update database
NewsTableAdapter.Update(NorthDataSet.News)
ChannelTableAdapter.Update(NorthDataSet.Channel)
FolderTableAdapter.Update(NorthDataSet.Folder)
'Fill database
NewsTableAdapter.Fill(NorthDataSet.News)
ChannelTableAdapter.Fill(NorthDataSet.Channel)
FolderTableAdapter.Fill(NorthDataSet.Folder)
End If
End Sub
Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click
'Create new channel
'Update content (This is not necessay since when you change dataset, content changes automatically.)
'channelID, folderID, newsID are all unique.
Dim aa As New Channel()
aa.TextBox1.Text = channelMax ' this textbox is dead
If aa.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim URL As String
Dim channelID As Integer
Dim aaa As DataRow
aaa = NorthDataSet.Channel.NewRow()
aaa.BeginEdit()
aaa(0) = aa.TextBox1.Text 'ChannelD
aaa(1) = aa.TextBox2.Text 'URL
aaa(2) = aa.TextBox3.Text 'Title
aaa(3) = DateTime.Now 'Updatedate
aaa(4) = aa.TextBox5.Text 'folderID
aaa.EndEdit()
NorthDataSet.Channel.AddChannelRow(aaa)
ChannelBindingSource.EndEdit()
ChannelTableAdapter.Update(NorthDataSet.Channel)
channelID = aa.TextBox1.Text 'ChannelD
URL = aa.TextBox2.Text 'URL
channelMax = channelMax + 1
readNews(channelID, URL)
NewsBindingSource.EndEdit()
NewsTableAdapter.Update(NorthDataSet.News)
Me.NewsTableAdapter.Fill(Me.NorthDataSet.News)
'TODO: This line of code loads data into the 'NorthDataSet.Channel' table. You can move, or remove it, as needed.
Me.ChannelTableAdapter.Fill(Me.NorthDataSet.Channel)
End If
End Sub
Private Sub ToolStripButton5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click
'Edit existing channel
Dim channelRow As DataRow
Dim newsRow As DataRow
Dim deleteRow As DataRow
Dim newsID As Integer
If NorthDataSet.Channel.Count > 0 Then
Dim a As New Channel()
getcurrentFolderChannelNews()
a.TextBox1.Text = channelHighlight.channelID 'this is dead
a.TextBox2.Text = channelHighlight.URL
a.TextBox3.Text = channelHighlight.Title
a.TextBox4.Text = channelHighlight.updateDate
a.TextBox5.Text = channelHighlight.folderID
Dim ID As Integer = channelHighlight.channelID
If a.ShowDialog() = Windows.Forms.DialogResult.OK Then
channelRow = NorthDataSet.Channel.Rows.Find(ID)
channelRow.Delete()
Dim aaa As DataRow
aaa = NorthDataSet.Channel.NewRow()
aaa.BeginEdit()
aaa(0) = a.TextBox1.Text 'ChannelD
aaa(1) = a.TextBox2.Text 'URL
aaa(2) = a.TextBox3.Text 'Title
aaa(3) = DateTime.Now 'Updatedate
aaa(4) = a.TextBox5.Text 'folderID
aaa.EndEdit()
NorthDataSet.Channel.AddChannelRow(aaa)
ChannelBindingSource.EndEdit()
ChannelTableAdapter.Update(NorthDataSet.Channel)
Dim URL As String
Dim channelID As Integer
ID = a.TextBox1.Text 'ChannelD
URL = a.TextBox2.Text 'URL
For Each newsRow In NorthDataSet.News.Rows
If newsRow("ChannelID") = ID Then
newsID = newsRow("NewsID")
deleteRow = NorthDataSet.News.Rows.Find(newsID)
deleteRow.delete()
End If
Next
readNews(channelID, URL)
NewsBindingSource.EndEdit()
NewsTableAdapter.Update(NorthDataSet.News)
Me.NewsTableAdapter.Fill(Me.NorthDataSet.News)
'TODO: This line of code loads data into the 'NorthDataSet.Channel' table. You can move, or remove it, as needed.
Me.ChannelTableAdapter.Fill(Me.NorthDataSet.Channel)
End If
End If
End Sub
Private Sub ToolStripButton6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton6.Click
'Deleting existing channel.
Dim newsID As Integer
Dim channelID As Integer
Dim channelNum As Integer
'Dim folderRow As DataRow
Dim channelRow As DataRow
Dim newsRow As DataRow
Dim deleteRow As DataRow
channelNum = NorthDataSet.Channel.Count
If channelNum > 0 Then
getcurrentFolderChannelNews()
channelID = channelHighlight.channelID
For Each newsRow In NorthDataSet.News.Rows
If newsRow("ChannelID") = channelID Then
newsID = newsRow("NewsID")
deleteRow = NorthDataSet.News.Rows.Find(newsID)
deleteRow.delete()
End If
Next
channelRow = NorthDataSet.Channel.Rows.Find(channelID)
channelRow.Delete()
'Update database
NewsBindingSource.EndEdit()
ChannelBindingSource.EndEdit()
NewsTableAdapter.Update(NorthDataSet.News)
ChannelTableAdapter.Update(NorthDataSet.Channel)
'TODO: This line of code loads data into the 'NorthDataSet.Channel' table. You can move, or remove it, as needed.
Me.NewsTableAdapter.Fill(Me.NorthDataSet.News)
Me.ChannelTableAdapter.Fill(Me.NorthDataSet.Channel)
End If
End Sub
Private Sub ToolStripButton7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton7.Click
'Update all news items for all channels (with same link, the content can be changed)
'Empty news table
Dim newsID As Integer
Dim newsNum As Integer
Dim newsRow As DataRow
Dim deleteRow As DataRow
Dim channelRow As DataRow
newsNum = NorthDataSet.News.Count
If newsNum > 0 Then
For Each newsRow In NorthDataSet.News.Rows
newsID = newsRow("NewsID")
deleteRow = NorthDataSet.News.Rows.Find(newsID)
deleteRow.Delete()
Next
newsMax = 0
Dim channelNum As Integer
channelNum = NorthDataSet.Channel.Count
If channelNum > 0 Then
For Each channelRow In NorthDataSet.Channel.Rows
Dim URL As String
Dim channelID As Integer
channelID = channelRow("ChannelID")
URL = channelRow("URL")
readNews(channelID, URL)
Next
End If
NewsBindingSource.EndEdit()
NewsTableAdapter.Update(NorthDataSet.News)
End If
'TODO: This line of code loads data into the 'NorthDataSet.News' table. You can move, or remove it, as needed.
Me.NewsTableAdapter.Fill(Me.NorthDataSet.News)
'TODO: This line of code loads data into the 'NorthDataSet.Channel' table. You can move, or remove it, as needed.
Me.ChannelTableAdapter.Fill(Me.NorthDataSet.Channel)
'TODO: This line of code loads data into the 'NorthDataSet.Folder' table. You can move, or remove it, as needed.
Me.FolderTableAdapter.Fill(Me.NorthDataSet.Folder)
End Sub
Public Class channelObj
Public channelID As Integer
Public URL As String
Public updateDate As DateTime
Public folderID As Integer
Public Title As String
End Class
Public Class newsObj
Public channelID As Integer
Public link As String
Public updateDate As DateTime
Public newsID As Integer
Public description As String
Public title As String
End Class
Database:
Folder: FolderID and FolderName.
Channel: ChannelID, URL, UpdateDate, FolderID, Title.
NewsItem: NewsID, Link, Title, Description, UpdateDate, ChannelID.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Quiz Engine:
Quiz Engine allows users to registrar to take quiz through internet. After login, the user is presented all available tests. Each quiz is provided in the form of multiple choice. The user can review his quiz results and save score into record. (they can see their previous scores every time they take the quiz. (The quiz engine is skinnable. It means the other users can integrate this quiz engine into their web site by changing style sheet and graphics.)
The project has a total of four web pages: login page, start page, result page and question page.The login has Login control for user to login and CreateUserWizard control for new user to register. The start page use Gridview control to d isplay all the available tests, and the user's previous test scores. The question page uses Detailsview control to display each question and its multiple choices, and 1 button to navigate through the whole test. The result page use GridView control to display the correct answers and use DetailsView control to display the explanation for each selected answer .
The project has a database that consists of three tables. One table stores test questions and their mutiple answers and conrrect answers; one table record all available tests; and one table record test history for each user. Databinding is used to bind asp controls to database.
The Microsoft SQL Server is integrated with Visual Studio. You open the Database Explorer, and then create a Database for your application. Then you create tables for the database you created and define columns for each table. And finally you put web controls on the web page, specify their datasources by choosing which table and what columns to be bound to the web controls.
Login Page:
1: CreateUserWizard control: used to register and login.
2: Login: used to login.
3: Login Status: shows whether the user is login or logout. Click this element can log the user out.
Information of user and password are stored in ASPNETDB.MDB
Start Page:
Gridview: avaible tests. Bound to Quz table.
Gridview: user’s past scores. Bound to UserQuiz table.
Dropdownlist: choose the test. Bound to Title of Quiz table.
Question Page:
Dropdownlist: choose the number of choice.
DetailsView: question and its multiple choices.
Button: navigate through the test.
The following is button click event-handler.
Dim i As Integer
i = DetailsView1.PageIndex
Dim currentAnswer As answerRecord = New answerRecord()
answer = CType(Session("answers"), ArrayList)
Dim a As System.Data.DataRowView
a = CType(DetailsView1.DataItem, System.Data.DataRowView)
currentAnswer.questionID = a("QuestionOrder").ToString
currentAnswer.correctAnswer = a("CorrectAnswer").ToString
currentAnswer.yourAnswer = DropDownList1.SelectedIndex + 1
If currentAnswer.correctAnswer = currentAnswer.yourAnswer Then
currentAnswer.result = "Correct"
Else
currentAnswer.result = "InCorrect"
End If
answer.Add(currentAnswer)
Session.Add("answers", answer)
If i < style="color: blue;">Then
DetailsView1.PageIndex = DetailsView1.PageIndex + 1
ElseIf i = DetailsView1.PageCount - 2 Then
Button1.Text = "Finish"
Label4.Text = " This is the last question"
DetailsView1.PageIndex = DetailsView1.PageIndex + 1
Else
Dim j As Integer
Dim sc As Double = 0
Dim score As Integer
For j = 0 To answer.Count - 1
If answer(j).result = "Correct" Then
sc += 1
End If
Next
score = (sc * 100) / (answer.Count)
Dim test As SqlDataSource
test = New SqlDataSource()
test.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\QuizEngine.mdf;Integrated
Security=True;User Instance=True"
test.InsertCommand = "INSERT INTO [UserQuiz] ([UserQuizID], [DateCompleted], [QuizID], [Score], [Username])
VALUES (@UserQuizID, @DateCompleted, @QuizID, @Score, @Username)"
test.InsertParameters.Add("UserQuizID", 7)
test.InsertParameters.Add("DateCompleted", DateTime.Now.ToString)
test.InsertParameters.Add("QuizID", Session("QuizID").ToString)
test.InsertParameters.Add("Score", score)
test.InsertParameters.Add("Username", User.Identity.Name)
test.Insert()
Response.Redirect("Result.aspx")
Result Page:
GridView: display test results and correct answers.
answer = CType(Session("answers"), ArrayList)
GridView1.DataSource = answer
GridView1.DataBind()
DetailsView: explanation for each correct answer.
DetailsView1.PageIndex = GridView1.SelectedIndex
Database:
Quiz: QuizID, Title, Description.
Question: QuestionID, Question, Answer1, Answer2, Answer3, Answer4, QustionOrder, CorrectAnswer, Quiz ID.
User: UserQuizID, UserName, QuizID, Score, DateCompleted.
Public Class answerRecord
Private _ca As Integer
Private _yA As Integer
Private _re As String
Private _qI As Integer
Public Property correctAnswer() As Integer
Get
Return _ca
End Get
Set(ByVal aa As Integer)
_ca = aa
End Set
End Property
Public Property yourAnswer() As Integer
Get
Return _yA
End Get
Set(ByVal aa As Integer)
_yA = aa
End Set
End Property
Public Property result() As String
Get
Return _re
End Get
Set(ByVal aa As String)
_re = aa
End Set
End Property
Public Property questionID() As Integer
Get
Return _qI
End Get
Set(ByVal aa As Integer)
_qI = aa
End Set
End Property
End Class
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Southern Airlines (http://www.cs-air.com/en/)
CSA web site provide passengers with flights information. They include ticket price and flight schedule. The web's advanced ticket reservation system allows passenges to reserve and purchase plane tickets through internet.The customers who use the cargo transportation service can find schedule and cost directly from web. The web site also publishes company's daily news, magazines and its anual reports.
The web site is web-based, datebased-driven application. It uses Oracle database that store the customer information, flight schedule and ticket prices. In order to use the online reservation service, the passager has to register first. With assigned username and password, the passenger then can reserver ticket online. The web site will check the customer information including credit number using Javascriptbefore sending the request to the payment software for further processing.
No comments:
Post a Comment