|
Bon voyage !
«There is a spectrum, from "clearly desirable behaviour," to "possibly dodgy behavior that still makes some sense," to "clearly undesirable behavior." We try to make the latter into warnings or, better, errors. But stuff that is in the middle category you don’t want to restrict unless there is a clear way to work around it.» Eric Lippert, May 14, 2008
|
|
|
|
|
So I need a bit of a hint for technology choice: I want to implement a web page where people must have an account, and can from time to time post data to subscribe to events. The account is for them to be able to see what they have subscribed to and to not have to enter their personal data (Name, phone number, mail and so on). On the back end, I would need to be able to retrieve data (for post-procesing), create some lists, and send mails. Saved data is not highly confidential.
What language should I go for ? Is there any framework I could use for that ?
|
|
|
|
|
There are two main options to start with as your first web venture...
A[^] and B[^]
If you have any background in the .NET word a MVC solution can be a very quick option...
If you more for the open platform, you should check some LAMP solution...
And there is a wide mine-field between (and around) the two...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
I've already experience with LAMP, but not with managing users and passwords and so on. Thought there could be maybe some CMS where I would have the possibility to not rewrite the whole user management from scratch, AND have access to the database for my own purposes. From what I have seen, there is either the closed CMS (no direct access to the database) or the full open one, but nothing inbetween.
.Net MVC is new to me, I am an old(!) C++ guy. GUI is still linked with MFC
|
|
|
|
|
|
Kornfeld Eliyahu Peter wrote: There are two main options to start with as your first web venture...
A[^] and B[^] For any programming venture really
Have a thumbs up for your fine sense of pessimism reality though
|
|
|
|
|
Cleanest way, at least how I do such things, is php (back-end) and javaScript front end.
If we presume no 'real' security, you have data entered in a <form>, which automatically submits to an php page that stores the data (in your database of choice, or even a flat file). PHP can do SMTP, database, everything. If you want SQL server, MS makes a free set of plug-ins.
A fair (and free) environment, with some visual design include, is Expressions 4. It's not full HTML5/CSS3 aware, but it does have autocomplete.
Lookup, without logging in: why not have submission of their (chosen) user ID return their input? You may wish to separate UID's and names from the list so you can put a unique constraint on the user list and have the one-to-many for their event(s). You kinda' know all this stuff. It's much the same, except that, due to security features, transferring and manipulating data on the server side vs. client side are separate events: sending data between them is an interesting game to learn.
Return from the form submission could be a page with all of their current submissions.
Thus, You don't need any special technology for this. You know how to make rules and such. A framework would add little.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Your requirements are simple enough that literally almost anything will do. A classic PERL CGI gateway could do this with flat files in a heartbeat.
Just pick a platform that interests you and call it a learning experience. If you really want to have a look outside of your normal stomping grounds and into modern web applications, have a look at the MEAN stack for the full-JavaScript experience, or make it a Go project, or play with Ruby on Rails, or even Python.
Or just write it in C++; there are plenty of web server libraries available in the OSS world.
"There are three kinds of lies: lies, damned lies and statistics."
- Benjamin Disraeli
|
|
|
|
|
First, go through the pain of setting up a server on the cloud. Here's[^] the steps for setting up an EC2 instance (most of it applies to Azure if you want to use that instead.) Consider whether you need/want/should implement SSL so your site, even for "not highly confidential" data, using SSL to encrypt the data between the server and client.
As to language on the server, obviously I'd recommend C#.
For a database, sounds like SQL Express would be more than sufficient, or you could see if MongoDB fits the bill.
Decide whether you're data needs something as complicated an Entity Framework, or you want to stick with something a bit more lightweight like Linq2SQL. If you go the NoSQL route, read up on MongoDB with Entity Framework[^].
Decide on ASP.NET, Razor/MVC (or whatever the right combination of acronyms is) or whether you need something that complicated to serve pages (it seems like you need only one page?) so maybe just a straight forward roll-your-own server is sufficient. (The latter is what I do even for bigger sites, I just can't deal with the cruft of things like ASP.NET and Razor. I wrote a free e-book[^] on rolling your own server.)
Even for a single page, I'd highly recommend you use jQuery.
Do you need more interesting controls? Look at something like jqWidgets.
Do you need a menu and make the site mobile friendly? Look at Bootstrap.
Are you wanting to do single page application (SPA)? Look at something like Bootstrap, Angular, etc.
Do you need simple databinding of objects to widgets on the page? Knockout and their ilk might be useful, then again, even something as simple as Knockout might be overkill for what you need.
Before you write any Javascript or put together any HTML, implement all your client-side functionality as REST calls and write tests for them, because then you can just write the callbacks as get/post AJAX calls using jQuery.
Even if you go the LAMP route, use something like node.js, or a lightweight server like Python's Bottle[^] (which I use on a Beaglebone single board computer, it's great), realize that most of your time will be spent on fussing with Javascript, HTML and CSS.
That's the general idea / decision making tree. Good luck. Ping me if you need help with something, assuming I know something.
Marc
|
|
|
|
|
Depends on the language we use...
But it is always put me in good mood, when someone calls me that way, especially when that someone clearly has no idea what to do without my stupidity...
It is a good day!
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
That's pretty stom of you
Ik vind ook dat je stupid bent
|
|
|
|
|
Ishkh khakfe andu null!
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
That's easy for you to say!
Anything that is unrelated to elephants is irrelephant Anonymous
- The problem with quotes on the internet is that you can never tell if they're genuine Winston Churchill, 1944
- I'd just like a chance to prove that money can't make me happy. Me, all the time
|
|
|
|
|
Be careful, you might summon the great lord Cthulhu
|
|
|
|
|
Duck! Here comes Smaug!
- I would love to change the world, but they won’t give me the source code.
|
|
|
|
|
Here we go with an easy peasy. Sorry for not posting it on Friday, pals
O~Z-< (5 )
|
|
|
|
|
Friday: spear
Today: torch
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Spear -> 2w
Torch -> 1B
I didn't post any on Friday btw
|
|
|
|
|
I didn't answered either...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Oh Okiee.
I actually took the Friday and today thingies that way :DumboMeEmoticon:
|
|
|
|
|
SHAKE your HANDS in the air like you just dont care!
=> DANCE
Rules for the FOSW ![ ^]
if(this.signature != "")
{
MessageBox.Show("This is my signature: " + Environment.NewLine + signature);
}
else
{
MessageBox.Show("404-Signature not found");
}
|
|
|
|
|
|
yis i got it
Rules for the FOSW ![ ^]
if(this.signature != "")
{
MessageBox.Show("This is my signature: " + Environment.NewLine + signature);
}
else
{
MessageBox.Show("404-Signature not found");
}
|
|
|
|
|
You're awesome ))
|
|
|
|
|
One flagrant design issue with web page is the 'alert' method.
You have to close the popup before you can close the window / tab!
Just stumbled on a malicious web page which spew some sounds file warning you have a virus and then made itself top most and kept an always open alert dialog (re-open it as soon as I close it)
I had to kill Chrome with the task manager, losing all my other tabs!!!
Now I wonder.... is there a way to disable model alert dialog that prevent tab closing in chrome?
|
|
|
|