|
Quote: My subconscious mind hands me a Razzie every morning.
Different awards for Office Goers and Office Runners! Seriously we do need artificial motivations when we have to get the orders, design, lead the coding team, follow up for payment, bribe to get things pushed to government offices and get up to discover something we did few months back is no more working is pretty hard at times.
|
|
|
|
|
What's an office?
My reference to being handed a razzie, was a jokey/roundabout way of saying. "I need to keep my feet on the ground." => I am mortal. I make mistakes. I don't care what anyone thinks of me.
Rather than becoming delusional about my status in the world. Ultimately it's all irrelevant when you're dead and gone.
My motivation? I do what I do because I enjoy it. It doesn't matter if I'm not the world's greatest programmer. I don't care.
If you don't enjoy something, get out of it. Find something else to do.
Q. Hey man! have you sorted out the finite soup machine?
A. Why yes, it's celery or tomato.
|
|
|
|
|
Quote: My motivation? I do what I do because I enjoy it. It doesn't matter if I'm not the world's greatest programmer. I don't care.
LIKE: :
|
|
|
|
|
dusty_dex: If you don't enjoy something, get out of it. Find something else to do.
I have read this more than thousand times now. But its 'easier said than done'. Life is not that easy. And on the surface many things seems interesting, but when task through real challenge, we try find something more interesting. Human behavior.
Happy Programming
|
|
|
|
|
Actually its the most simple thing in the world, you just have to take the first step and do it. Wanting something different, that is also interesting and provides more of a challenge is not the same thing as just wanting a change...
Rhys
"If you ever start taking things too seriously, just remember that we are talking monkeys on an organic spaceship flying through the Universe"
|
|
|
|
|
Grasshopper.iics wrote: Diego, while reading yours post, I was thinking as if I wrote the whole post. My situation is almost similar to you. I have been coding for over a decade, running my firm. Development really needs longer hours and 12+ is common and consistent at our level. Less balanced life and frequent changes do hurt and the cost factor is always a worry.
Indeed, coding requires working from monday to monday. If you really want to be productive working for your own, you have to do this, no matter if you code everything yourself from your room or have a small team that you have to manage or do both things. It's 14/hours a day, 365 days
I understand your point, the satisfaction after deep-thinking and resolving, specially, after doing things based exclusivey on your own standards, the feeling of a perfectly made code. Yes, I know all that. I appreciate your kind words and respect. Truly. However, it doesn't change my point of view on the 7 subjects discussed, programming is simply too much time-consuming. I came to point where I have to deal with those 7 issues daily and accept that I came to a point where I say to myself everyday that programming sucks. I have some days that I spend on the keyboard, reading news, checking email, reading news again, having notes about all that I have to do and basically 'should do' throughout the day. And the day finishes and I've made luckly 20% of what I should do. For example today. I admit it, I am totally burnt-out
Add to it the internal work, marketing work, the many hats you mention we all have to wear. It's too much. I am tired of exchanging hats this way often
Diego Sendra
CEO
Diego Sendra
software development
Montevideo, Uruguay
e-mail: contact@diegosendra.com
http://www.diegosendra.com
Yahoo: diegosendra1976
Skype: dsendra1976
modified 13-Mar-13 0:23am.
|
|
|
|
|
diegosendra wrote: Indeed, coding requires working from monday to monday. If you really want to be
productive working for your own, you have to do this, no matter if you code
everything yourself from your room or have a small team that you have to manage
or do both things. It's 14/hours a day, 365 days
I very much agree with your original post, but this statement I must disagree with. You owe it to yourself, and your family, to work sensible hours and spend time with them. If you can't make enough money to live on (and prosper) working a 40 hour week, then it's time to give up having your own business and work for someone else.
Are you going to lie on your death bed wishing you'd worked more, or spent more time with your family?
Also, remember the 80/20 rule. 80% of your income probably comes from 20% of your customers, so cultivate those relationships that produce the goods.
Lastly, learn how to say "NO". It's certainly one of the hardest things I have learned how to do in my business life, and it still is difficult to say, but sometimes, it's simply not worth your time to go and do some of the work, particularly if there are other companies who specialise in that kind of thing - for me, it's PC break/fix stuff. There are a multitude of companies around here who do only that, and they come to you... mostly stocked by young, eager nerds. Why would I want to take on that kind of work (when I am a software developer)? Yet people will phone up because my business is in their local area and want me to do it. I say no.
|
|
|
|
|
In some point, two or three years ago, I discovered that coding as primary job is a dead end.
Then I switched to project management and scrum mastering.
Benefits:
1. Still working in "application development" and having contact with new technologies
2. Finally having time to code for fun (when and what I want!)
If you're sick of it - think about something else to do. It will not pass or get better.
|
|
|
|
|
cmd.Parameters.Add("@SomeID", SqlDbType.Int)
cmd.Parameters("@SomeID").Value = Session("SomeID").ToString()
It appears this developer didn't have a strong conception of data types, knowledge of AddWithValue, or knowledge that the "@" is optional when specifying parameters.
|
|
|
|
|
AspDotNetDev wrote: SqlDbType.Int
Soooo many practitioners think that's necessary.
AspDotNetDev wrote: AddWithValue
I never use that; it's not defined by an Interface I use. I use IDbCommand.CreateParameter and IDataParameterCollection.Add.
AspDotNetDev wrote: is optional
That may be true with the database system you use; it may not be true with all the database systems I use.
|
|
|
|
|
I also prefer to see it, even if optional because it makes it more obvious that it is a required parameter.
If you get an email telling you that you can catch Swine Flu from tinned pork then just delete it. It's Spam.
|
|
|
|
|
PIEBALDconsult wrote: Soooo many practitioners think that's necessary
I find nothing wrong with specifying that. The thing I find funny is the specification that it's an int, and then on the next line passing in a string, which was actually an int to start with (rather than casting to an int).
PIEBALDconsult wrote: I never use that
The first thing I did was convert it to LINQ. Now the call looks a bit like context.SomeStoredProcedure(someInt) . In my next project, that's basically still how I'll do it, only I'll be abstracting away the data source and using Ninject, so where it's actually used it'll look more like dataStore.DoSomething(someInt) .
PIEBALDconsult wrote: That may be true with the database system you use; it may not be true with all the database systems I use
I can't seem to find any documentation regarding the "@" being optional, but much of my code has been written with this fact in mind. SqlClient.SqlCommand knows to automatically prefix "@" for parameter names. I did come across this (see "Working with Parameter Placeholders"), which indicates the parameter naming varies per client. I wonder, then, if removing the prefix and letting the query composer do the prefixing is the best way for the code to be cross-client compatible.
|
|
|
|
|
AspDotNetDev wrote: I can't seem to find any documentation regarding the "@" being optional, but
much of my code has been written with this fact in mind. SqlClient.SqlCommand
knows to automatically prefix "@" for parameter names. I did come across this (see
"Working with Parameter Placeholders"), which indicates the parameter naming
varies per client. I wonder, then, if removing the prefix and letting the query
composer do the prefixing is the best way for the code to be cross-client
compatible.
That's an interesting point.
"If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair.
nils illegitimus carborundum
me, me, me
|
|
|
|
|
I don't think there's a real way to achieve portability on that, it strongly depends on the connector used. ODBC for example uses a positional syntax for parameters, ignores parameter names and uses the '?' char as a parameter placeholder. MS-Access, same thing. The MySQL provider IIRC can be configured both ways, but by default requires the '@' char (or maybe the reverse, it has been a few years since I last used it).
Luca
The Price of Freedom is Eternal Vigilance. -- Wing Commander IV
En Það Besta Sem Guð Hefur Skapað, Er Nýr Dagur.
(But the best thing God has created, is a New Day.)
-- Sigur Ròs - Viðrar vel til loftárása
|
|
|
|
|
AddWithValue is the best thing since sliced bread (except for bacon)... Makes everything a hell of a lot easier.
Why can't I be applicable like John? - Me, April 2011 ----- Beidh ceol, caint agus craic againn - Seán Bán Breathnach ----- Da mihi sis crustum Etruscum cum omnibus in eo! ----- Just because a thing is new don’t mean that it’s better - Will Rogers, September 4, 1932
|
|
|
|
|
I quit using AddWithValue when I discovered it eliminated the query optimizer's ability to generate efficient queries. With Stored Procedures it's probably ok, but if the query is embedded in your code it's a performance killer.
|
|
|
|
|
Easier isn't always better.
|
|
|
|
|
AddWithValue can cause problems where conversions may not be as expected: better to use Add and be explicit about what you are doing. And what harm the @? Just because something is optional doesn't mean you shouldn't use it - verbosity is king - it promotes clarity.
"If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair.
nils illegitimus carborundum
me, me, me
|
|
|
|
|
Notice anything else about why the code is strange?
|
|
|
|
|
Yes indeed, but I didn't think that was your point.
"If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair.
nils illegitimus carborundum
me, me, me
|
|
|
|
|
My only point is to make fun of as many things as is possible in that code snippet. However, the only real thing wrong with it is converting an integer to a string and then using that string as the value of a parameter that was just explicitly specified to be an integer.
|
|
|
|
|
Indeed - but you missed the smiley! I took you seriously! I wouldn't do it in that way (even with correct typing), in any case - too clumsy and not reusable.
"If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair.
nils illegitimus carborundum
me, me, me
|
|
|
|
|
AspDotNetDev wrote: "@" is optional when specifying parameters.
Actually I believe the "@" symbol only became optional in .Net Framework 2.0 and above, before that it was a requirement. Please don't take my word for that, but its coming from a rusty memory of my own personal experience.
|
|
|
|
|
Well, in the codebase I handle I'm enforcing a standard of explicitly stating the parameter type when using ADO.net. Granted, we're autogenerating the DAL using an internal tool, but it helps in a lot of situations. Example: when using a string field, if you specify the length, ADO.net will truncate the parameter to the expected maximum length. Otherwise it gets passed to the underlying db and the query will error out. For us, the former behaviour is preferred. YMMV
Luca
The Price of Freedom is Eternal Vigilance. -- Wing Commander IV
En Það Besta Sem Guð Hefur Skapað, Er Nýr Dagur.
(But the best thing God has created, is a New Day.)
-- Sigur Ròs - Viðrar vel til loftárása
|
|
|
|
|
I believe this line:
cmd.Parameters("@SomeID").Value = Session("SomeID").ToString()
Should be this:
cmd.Parameters("@SomeID").Value = Int32.Parse(Session("SomeID").ToString())
|
|
|
|
|