Software Project

I figured that I would start a blog about my software
development project that I am doing in coordination with another classmate. I
have to say that I was very excited about this because up until now, aside from
a few projects of my own (small to say the least), I have never been involved
in really working with someone to create something from idea to release. The
finished product will not be complete by the time it is due but we will
continue after classes end to complete it. We are using the agile development
process for the project which is nice because we don’t necessarily have to have
the whole project complete all at once, but instead base it upon what is
important based upon the client’s need and timeframe.
On to the project. We are creating a web application called
Web Hall Pass which is based on a program a teacher at Leicester high school
developed in Visual basic, but wanted it redone in a different language so it
could be used on a server. What the program does is allow students to check out
to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by
printing it or the student can take a picture with their phone via the program
which is running on a computer in the classroom. This is good in that the
student can get up and check out when he/she needs to go somewhere without
interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel
that uses the Model View Controller (MVC) architectural pattern. There are some
challenges because neither of us have ever used this before so a lot of reading
and doing tutorials was a necessity. Once we got the basics down, working with
the framework didn’t seem as intimidating. The great thing about Laravel is the
ease of creating tables, and html pages(blades) and how seamless the
integration is between the framework and the database. You run commands using
PHP artisan to create models, controllers, migrations and too much to discuss
here. That being said we have barely scratched the surface of what is capable.
The nice thing about it is that it takes away the daunting tasks that you face
in just using PHP alone. Validation, security, authorization and more is already
taken into account with Laravel, where as in PHP you have to write all of that.


The main thing I think that I see with web frameworks is
that they allow you to go from idea to release faster than ever, and as we all
know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Software Project

I figured that I would start a blog about my software
development project that I am doing in coordination with another classmate. I
have to say that I was very excited about this because up until now, aside from
a few projects of my own (small to say the least), I have never been involved
in really working with someone to create something from idea to release. The
finished product will not be complete by the time it is due but we will
continue after classes end to complete it. We are using the agile development
process for the project which is nice because we don’t necessarily have to have
the whole project complete all at once, but instead base it upon what is
important based upon the client’s need and timeframe.
On to the project. We are creating a web application called
Web Hall Pass which is based on a program a teacher at Leicester high school
developed in Visual basic, but wanted it redone in a different language so it
could be used on a server. What the program does is allow students to check out
to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by
printing it or the student can take a picture with their phone via the program
which is running on a computer in the classroom. This is good in that the
student can get up and check out when he/she needs to go somewhere without
interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel
that uses the Model View Controller (MVC) architectural pattern. There are some
challenges because neither of us have ever used this before so a lot of reading
and doing tutorials was a necessity. Once we got the basics down, working with
the framework didn’t seem as intimidating. The great thing about Laravel is the
ease of creating tables, and html pages(blades) and how seamless the
integration is between the framework and the database. You run commands using
PHP artisan to create models, controllers, migrations and too much to discuss
here. That being said we have barely scratched the surface of what is capable.
The nice thing about it is that it takes away the daunting tasks that you face
in just using PHP alone. Validation, security, authorization and more is already
taken into account with Laravel, where as in PHP you have to write all of that.


The main thing I think that I see with web frameworks is
that they allow you to go from idea to release faster than ever, and as we all
know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Software Project

I figured that I would start a blog about my software
development project that I am doing in coordination with another classmate. I
have to say that I was very excited about this because up until now, aside from
a few projects of my own (small to say the least), I have never been involved
in really working with someone to create something from idea to release. The
finished product will not be complete by the time it is due but we will
continue after classes end to complete it. We are using the agile development
process for the project which is nice because we don’t necessarily have to have
the whole project complete all at once, but instead base it upon what is
important based upon the client’s need and timeframe.
On to the project. We are creating a web application called
Web Hall Pass which is based on a program a teacher at Leicester high school
developed in Visual basic, but wanted it redone in a different language so it
could be used on a server. What the program does is allow students to check out
to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by
printing it or the student can take a picture with their phone via the program
which is running on a computer in the classroom. This is good in that the
student can get up and check out when he/she needs to go somewhere without
interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel
that uses the Model View Controller (MVC) architectural pattern. There are some
challenges because neither of us have ever used this before so a lot of reading
and doing tutorials was a necessity. Once we got the basics down, working with
the framework didn’t seem as intimidating. The great thing about Laravel is the
ease of creating tables, and html pages(blades) and how seamless the
integration is between the framework and the database. You run commands using
PHP artisan to create models, controllers, migrations and too much to discuss
here. That being said we have barely scratched the surface of what is capable.
The nice thing about it is that it takes away the daunting tasks that you face
in just using PHP alone. Validation, security, authorization and more is already
taken into account with Laravel, where as in PHP you have to write all of that.


The main thing I think that I see with web frameworks is
that they allow you to go from idea to release faster than ever, and as we all
know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Software Project

I figured that I would start a blog about my software
development project that I am doing in coordination with another classmate. I
have to say that I was very excited about this because up until now, aside from
a few projects of my own (small to say the least), I have never been involved
in really working with someone to create something from idea to release. The
finished product will not be complete by the time it is due but we will
continue after classes end to complete it. We are using the agile development
process for the project which is nice because we don’t necessarily have to have
the whole project complete all at once, but instead base it upon what is
important based upon the client’s need and timeframe.
On to the project. We are creating a web application called
Web Hall Pass which is based on a program a teacher at Leicester high school
developed in Visual basic, but wanted it redone in a different language so it
could be used on a server. What the program does is allow students to check out
to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by
printing it or the student can take a picture with their phone via the program
which is running on a computer in the classroom. This is good in that the
student can get up and check out when he/she needs to go somewhere without
interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel
that uses the Model View Controller (MVC) architectural pattern. There are some
challenges because neither of us have ever used this before so a lot of reading
and doing tutorials was a necessity. Once we got the basics down, working with
the framework didn’t seem as intimidating. The great thing about Laravel is the
ease of creating tables, and html pages(blades) and how seamless the
integration is between the framework and the database. You run commands using
PHP artisan to create models, controllers, migrations and too much to discuss
here. That being said we have barely scratched the surface of what is capable.
The nice thing about it is that it takes away the daunting tasks that you face
in just using PHP alone. Validation, security, authorization and more is already
taken into account with Laravel, where as in PHP you have to write all of that.


The main thing I think that I see with web frameworks is
that they allow you to go from idea to release faster than ever, and as we all
know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Software Project

I figured that I would start a blog about my software
development project that I am doing in coordination with another classmate. I
have to say that I was very excited about this because up until now, aside from
a few projects of my own (small to say the least), I have never been involved
in really working with someone to create something from idea to release. The
finished product will not be complete by the time it is due but we will
continue after classes end to complete it. We are using the agile development
process for the project which is nice because we don’t necessarily have to have
the whole project complete all at once, but instead base it upon what is
important based upon the client’s need and timeframe.
On to the project. We are creating a web application called
Web Hall Pass which is based on a program a teacher at Leicester high school
developed in Visual basic, but wanted it redone in a different language so it
could be used on a server. What the program does is allow students to check out
to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by
printing it or the student can take a picture with their phone via the program
which is running on a computer in the classroom. This is good in that the
student can get up and check out when he/she needs to go somewhere without
interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel
that uses the Model View Controller (MVC) architectural pattern. There are some
challenges because neither of us have ever used this before so a lot of reading
and doing tutorials was a necessity. Once we got the basics down, working with
the framework didn’t seem as intimidating. The great thing about Laravel is the
ease of creating tables, and html pages(blades) and how seamless the
integration is between the framework and the database. You run commands using
PHP artisan to create models, controllers, migrations and too much to discuss
here. That being said we have barely scratched the surface of what is capable.
The nice thing about it is that it takes away the daunting tasks that you face
in just using PHP alone. Validation, security, authorization and more is already
taken into account with Laravel, where as in PHP you have to write all of that.


The main thing I think that I see with web frameworks is
that they allow you to go from idea to release faster than ever, and as we all
know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Software Project

I figured that I would start a blog about my software
development project that I am doing in coordination with another classmate. I
have to say that I was very excited about this because up until now, aside from
a few projects of my own (small to say the least), I have never been involved
in really working with someone to create something from idea to release. The
finished product will not be complete by the time it is due but we will
continue after classes end to complete it. We are using the agile development
process for the project which is nice because we don’t necessarily have to have
the whole project complete all at once, but instead base it upon what is
important based upon the client’s need and timeframe.
On to the project. We are creating a web application called
Web Hall Pass which is based on a program a teacher at Leicester high school
developed in Visual basic, but wanted it redone in a different language so it
could be used on a server. What the program does is allow students to check out
to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by
printing it or the student can take a picture with their phone via the program
which is running on a computer in the classroom. This is good in that the
student can get up and check out when he/she needs to go somewhere without
interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel
that uses the Model View Controller (MVC) architectural pattern. There are some
challenges because neither of us have ever used this before so a lot of reading
and doing tutorials was a necessity. Once we got the basics down, working with
the framework didn’t seem as intimidating. The great thing about Laravel is the
ease of creating tables, and html pages(blades) and how seamless the
integration is between the framework and the database. You run commands using
PHP artisan to create models, controllers, migrations and too much to discuss
here. That being said we have barely scratched the surface of what is capable.
The nice thing about it is that it takes away the daunting tasks that you face
in just using PHP alone. Validation, security, authorization and more is already
taken into account with Laravel, where as in PHP you have to write all of that.


The main thing I think that I see with web frameworks is
that they allow you to go from idea to release faster than ever, and as we all
know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Software Project

I figured that I would start a blog about my software development project that I am doing in coordination with another classmate. I have to say that I was very excited about this because up until now, aside from a few projects of my own (small to say the least), I have never been involved in really working with someone to create something from idea to release. The finished product will not be complete by the time it is due but we will continue after classes end to complete it. We are using the agile development process for the project which is nice because we don’t necessarily have to have the whole project complete all at once, but instead base it upon what is important based upon the client’s need and timeframe.
On to the project. We are creating a web application called Web Hall Pass which is based on a program a teacher at Leicester high school developed in Visual basic, but wanted it redone in a different language so it could be used on a server. What the program does is allow students to check out to the bathroom, principal, gym, nurse, etc. and generate a hall pass either by printing it or the student can take a picture with their phone via the program which is running on a computer in the classroom. This is good in that the student can get up and check out when he/she needs to go somewhere without interrupting the teacher mid class.
After discussion we chose a PHP web framework called Laravel that uses the Model View Controller (MVC) architectural pattern. There are some challenges because neither of us have ever used this before so a lot of reading and doing tutorials was a necessity. Once we got the basics down, working with the framework didn’t seem as intimidating. The great thing about Laravel is the ease of creating tables, and html pages(blades) and how seamless the integration is between the framework and the database. You run commands using PHP artisan to create models, controllers, migrations and too much to discuss here. That being said we have barely scratched the surface of what is capable. The nice thing about it is that it takes away the daunting tasks that you face in just using PHP alone. Validation, security, authorization and more is already taken into account with Laravel, where as in PHP you have to write all of that.

The main thing I think that I see with web frameworks is that they allow you to go from idea to release faster than ever, and as we all know time is of the essence.

From the blog format c: /s by c-braley and used with permission of the author. All other rights reserved by the author.

Deadly Linux Commands

When it comes to Linux, I would say I know the overall basics of how it is ran, operated and how to use it but I certainly am not a professional of knowing the more advanced commands and functions that Linux has to offer. Knowing that Linux is a very useful OS, especially for programmers, I wanted to know a little bit more about its commands. I was browsing through a couple of sites, blogs and articles and there was one that immediately catch my attention. The title of the article was “Deadly Commands on Linux” (http://www.softwaretestingclub.com/profiles/blogs/deadly-commands-on-linux) and it talked about 6 commands that are dangerous in the sense that it could completely wipe out your system if it is unintentionally (or intentionally) used. To briefly demonstrate just how dangerous these commands could be, there is a command rm -rf / – that will delete any specific file on a hard drive and all connected devices or if you want, delete all the files on a hard drive and connected devices. That’s not even the worst part; the worst part about this command is that it does not even ask you if you are sure about deleting those files, it will do it without prompting you about it. To be honest, I thought that command was pretty cool but on the other hand, I’m just thinking to myself “Why would you even have a command like that in the first place…”. But hey, after reading this article, at least now I know which commands to avoid when working with Linux!

From the blog CS@Worcester – Tan Trieu's Blog by tanminhtrieu and used with permission of the author. All other rights reserved by the author.

Exploratory Testing

This week I was reading a book by James A. Whittaker called Exploratory Software Testing. The book, obviously, is about exploratory software testing.

The second chapter starts with a quote by Alan J. Perlis: There are two ways to write error-free programs: only the third one works. Basically he means that there is no way to write error free programs!

So if there is no way to write error free programs, is there a way to prevent bugs in programs? He goes on to discuss that all bug prevention techniques are generally developer-oriented like writing better specs, performing code reviews, running static analysis tools and performing unit tests. He argues that all of these techniques suffer from some fundamental issues: the “developer makes the worst tester” problem, the “software at rest” problem, and the “no data” problem. The “software at rest” problem brings to light the fact that code reviews and static analysis techniques try to test programs when there are at rest (not running). The problem with this approach is that most bugs only surface when they are running. What is the point of testing software when you cannot identify bugs?

The author goes on to argue that manual testing is more powerful than automated testing. Manual test techniques like exploratory testing allows the full power of the human brain to be used on finding bugs. This chapter is a prelude to the rest of the book which discusses the methods and wisdom used for exploratory testing.

From the blog Software Testing – The blog about software by Sudarshan and used with permission of the author. All other rights reserved by the author.

Why You Should Be Writing Descriptive Test Names

A non descriptive test name will cause anyone unfamiliar with the tests to be forced to read through the whole test code to figure out what is actually being tested. An example of this coming from the article is this code along with the test name:

@Test public void isUserLockedOut_invalidLogin() {
  authenticator.authenticate(username, invalidPassword);
  assertFalse(authenticator.isUserLockedOut(username));

  authenticator.authenticate(username, invalidPassword);
  assertFalse(authenticator.isUserLockedOut(username));

  authenticator.authenticate(username, invalidPassword);
  assertTrue(authenticator.isUserLockedOut(username));
}

Looking at this test the test name “isUserLockedOut_invalidLogin” is not descriptive enough considering what the test does. This causes us to have to look through the code and figure out that it locks the user out after 3 failed login attempts. A more appropriate test name would be “isUserLockedOut_lockOutUserAfterThreeInvalidLoginAttempts”. This test name tells us exactly whats going on and having to read through the code is not needed. The scenario and the expected outcome should be in the test name. This will save many hours by just having to read the test name instead of reading through code to figure out what the test is doing.

https://testing.googleblog.com/2014/10/testing-on-toilet-writing-descriptive.html

From the blog CS@Worcester – Software Testing by kyleottblog and used with permission of the author. All other rights reserved by the author.