• Mark (unregistered) in reply to Anonymous

    The decision to make the system in VB.NET was made solely by the guy who was here before me. He was the only web developer then, just like I'm the only web developer now.

    I want to convert the system over, but I never seem to have the time to do anything other than the mountains of text changes they give me. (Yes. Implementing a CMS is also one of my goals for the upcoming new version of the site.)

  • Bill's Kid (unregistered) in reply to Anon Too
    Anon Too:
    Did the never hear of SQL replication at this place? It's been around for some time now. Or, how about a VIEW, if it's in the same database?
    Actually, the source of the data is a view. So, I’m guessing that it isn't in the same database or there'd be no reason to copy it in the first place. You can publish views for replication, though, so that's probably what I would have done.

    I'm going to take the rare opinion that the entire system is not screwed up. Certainly everything we se being done by this dev is. However, I would guess that the source database is pretty well locked down and that it contains data that the web server is not allowed to access directly (SOX or PCI anyone?) hence, the reason for this copy in the first place. I would also guess it is using a view to join multiple tables into records more easily managed by the web app, and to simultaneously hide PII or other sensitive data. It looks to me that at the very least they have joined to some sort of employee data - including ranks - and to payment information. I would bet they created views that are the only thing accessible to the user/role/account used to pull data from the source. I think that because someone with Gary's level of knowledge would never have heard of a view, let-alone successfully created one. I think they didn’t want Gary messing with their data (apparently with good reason) so they gave him some views and limited access.

    To me, TRWTF seems to be that someone tasked a .Net dev who obviously knows next to nothing about SQL server with creating a process to move data from the source to the web-facing destination.

  • (cs) in reply to Bill's Kid
    Bill's Kid:
    Anon Too:
    Did the never hear of SQL replication at this place? It's been around for some time now. Or, how about a VIEW, if it's in the same database?
    Actually, the source of the data is a view. So, I’m guessing that it isn't in the same database or there'd be no reason to copy it in the first place. You can publish views for replication, though, so that's probably what I would have done.

    I'm going to take the rare opinion that the entire system is not screwed up. Certainly everything we se being done by this dev is. However, I would guess that the source database is pretty well locked down and that it contains data that the web server is not allowed to access directly (SOX or PCI anyone?) hence, the reason for this copy in the first place. I would also guess it is using a view to join multiple tables into records more easily managed by the web app, and to simultaneously hide PII or other sensitive data. It looks to me that at the very least they have joined to some sort of employee data - including ranks - and to payment information. I would bet they created views that are the only thing accessible to the user/role/account used to pull data from the source. I think that because someone with Gary's level of knowledge would never have heard of a view, let-alone successfully created one. I think they didn’t want Gary messing with their data (apparently with good reason) so they gave him some views and limited access.

    To me, TRWTF seems to be that someone tasked a .Net dev who obviously knows next to nothing about SQL server with creating a process to move data from the source to the web-facing destination.

    Dude, you got "Gary" and the system figured out to a T. I am very impressed.
  • Bill's Kid (unregistered) in reply to hoodaticus
    hoodaticus:
    Bill's Kid:
    Anon Too:
    Did the never hear of SQL replication at this place? It's been around for some time now. Or, how about a VIEW, if it's in the same database?
    Actually, the source of the data is a view. So, I’m guessing that it isn't in the same database or there'd be no reason to copy it in the first place. You can publish views for replication, though, so that's probably what I would have done.

    I'm going to take the rare opinion that the entire system is not screwed up. Certainly everything we se being done by this dev is. However, I would guess that the source database is pretty well locked down and that it contains data that the web server is not allowed to access directly (SOX or PCI anyone?) hence, the reason for this copy in the first place. I would also guess it is using a view to join multiple tables into records more easily managed by the web app, and to simultaneously hide PII or other sensitive data. It looks to me that at the very least they have joined to some sort of employee data - including ranks - and to payment information. I would bet they created views that are the only thing accessible to the user/role/account used to pull data from the source. I think that because someone with Gary's level of knowledge would never have heard of a view, let-alone successfully created one. I think they didn’t want Gary messing with their data (apparently with good reason) so they gave him some views and limited access.

    To me, TRWTF seems to be that someone tasked a .Net dev who obviously knows next to nothing about SQL server with creating a process to move data from the source to the web-facing destination.

    Dude, you got "Gary" and the system figured out to a T. I am very impressed.
    So, in your world, when people use terms like "I would guess", "I would also guess", "I would bet", "I think" and "seems to be", they are proclaiming to have everything figured out?

    I guess that makes you look stupid. However, based on your comment record, I would bet* that you really aren't stupid. You do seem to be incredibly sarcastic, though.

    *if the odds were right.

  • (cs) in reply to remi bourgarel

    c'mon, you can think of something better than 'TRUNCATE TABLE'. :)

    btw, TRUNCATE TABLE does not work on tables published for transactional replication. You have to do a DELETE.

  • (cs) in reply to Bill's Kid

    Agreed. I think TRWTF is the fact that this code is doing a delete before populating data for what i'd imagine is a grid or some other view of the data. Concurrency is the real issue here, as what if you are viewing the data while another user fires a new view and deletes it all using the same routine?

    I remember one of my first web apps declared a lot of data stuff as static objects. All went well in development/debugging until I realized multiple people accessing the web site were essentially accessing the same data objects and trampling over each other's fields/properties. Oops! :)

  • (cs) in reply to anon
    anon:
    Dr. Ros De'Ath:
    Thanks a bunch Gary, there's a good reason why I have an apostrophe in my surname you know.
    But Gary's heard something about database updates and apostrophes causing problems.
    Hey wait a minute, I genuinely live in the state of O'drop database;--hio, you insensitive clod!
  • PRMan (unregistered) in reply to frits
    frits:
    Tony:
    Your not too smart, are you?

    He already said he was a DBA...

  • Craig (unregistered)

    L.A.S.T !

  • (cs) in reply to Craig
    Craig:
    L.A.S.T !

    cONGRATZ...

  • Chris (unregistered)

    He just removed quotes instead of escaping them?

Leave a comment on “Gary Strikes Again”

Log In or post as a guest

Replying to comment #:

« Return to Article