Announcement

Collapse
No announcement yet.

Licensing - comments needed

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Just give me a tree structure (with descriptions if possible) how you want it setup and I'll put it together for you. SMF has a great sub-forum feature. (see online docs) If you join, I will make you the admin so you can tweak the forum to the way you want.

    CMS Front End, ToDo Lists, Calendars, Bug Tracking and Wiki are all features I can add to the site when you say the word.

    John

    SMF Online Help
    Last edited by John Spikowski; 5 Jun 2008, 06:44 PM.

    Comment


    • #22
      Calendar

      Stan,

      It seems the the SMF software offers a calendar feature as part of the forum package. I enabled it with moderators only allowed to add/edit the events. (all can view them) I sent you the keys to the city so you should be able to configure the calendar options as you wish.

      John

      Comment


      • #23
        The SMF software allow multiple 'boards' and sub-forums. Each with their own moderator. (team leader)

        I think the www.vb2pb.org site might work out better then chasing a thread in the Cafe.

        John

        Comment


        • #24
          I added a few new boards (forum sub-sections) to the www.vb2pb.org forum. Nothing is cast in stone and this is just a beginning draft format.

          John
          Last edited by John Spikowski; 6 Jun 2008, 01:10 AM.

          Comment


          • #25
            Originally posted by John Spikowski View Post
            I added a few new boards (forum sub-sections) to the www.vb2pb.org forum. Nothing is cast in stone and this is just a beginning draft format.

            John
            I spent some time on the site this morning. Added some things to the calendar and created a new board for calendar updates. Let me know if you think what I did will work.

            On the Other Hand -- GREAT WORK ! I'm on-board completely with www.vb2pb.org now.

            Stan
            Do not go quiet into that good night,
            ... Rage, rage against the dark.

            Comment


            • #26
              When are you planning to post something to the public side about the new site/forum?

              Let me know if there is anything I can do to help.


              John

              Comment


              • #27
                Originally posted by John Spikowski View Post
                When are you planning to post something to the public side about the new site/forum?

                Let me know if there is anything I can do to help.


                John

                Just did it! Take a look at the Status thread in the Cafe.

                Stan
                Do not go quiet into that good night,
                ... Rage, rage against the dark.

                Comment


                • #28
                  Originally posted by Chris Holbrook View Post
                  ...
                  I think I would need examples to understand his point, as a)the structure and syntax of the language don't seem very unusual, b) I'm almost a VB virgin (working on it, legal copy arriving shortly)
                  Bottom line is VB allows so many 'poor programming' practices that old code could get very problematic.

                  A recent example was posted by John Petty:

                  Take the following (bad but legal) simple bit of VB code
                  Private Sub Command1_Click()
                  Dim s As String
                  s = "3.5"
                  a = s
                  b = 2
                  a = a * b
                  a = a & " text"
                  Print a
                  Print b
                  End Sub
                  After the first assignment “a” will be type 8 (wide b string), after the multiplication it will be a type 5 (double) and return to an 8 by adding the text. “b” will remain as a type 2 (integer) even though it participated in a floating point multiplication and then was printed as a string without the use of STR$ or FORMAT$. If the multiplication had been b = a * b then “b” would have changed to type 5 even though the result was an integer.
                  During the conversion “a” would need to become 2 totally different variables one a string and one a double. PB does not allow any variant math operations etc
                  John
                  Stan
                  Do not go quiet into that good night,
                  ... Rage, rage against the dark.

                  Comment


                  • #29
                    Originally posted by StanHelton View Post
                    Bottom line is VB allows so many 'poor programming' practices that old code could get very problematic.

                    A recent example was posted by John Petty:

                    Stan
                    Although it isn't easy to read, this can be handled.

                    The PB code created can be created to test the VariantType (VariantVT function) and run the correct code based on the actual type. The PB code is ugly, but variants are ugly.

                    The following is probably what VB 6 compiler does for you under the hood in its "compilation". You don't see the produced code.

                    I'd also have as a Tips/Comments/Recommendation that Variants be removed.

                    Could we remove the variant and define A as Double? Use Str$/Val where required and remove the variant definition completely? If A is local then yes. If A is a Global variable would need to stay a variant as we don't know the type it is (well if it is one type throughout the entire application, we do). Also if A were passed to a function BYREF, it could be changed in that function.

                    One of the pre-process steps might be to force (or recommend) that the VB 6 have Option Explicit used. This would allow the user to indicate variable scope before conversion (Where the VB 6 compiler could help). DIM A as variant in this function and if the user gets another error, they can easily move the definition to a "Global A as variant". This would be a great help to producing easier to understand PB code, at least if the developer is diligent.

                    Complicated, but possible for the computer to figure out. The resulting code is ugly, but so was the input

                    Hope this all makes sense to someone else.

                    Code:
                    FUNCTION PBMAIN () AS LONG
                        LOCAL s AS STRING
                        LOCAL a AS VARIANT
                        LOCAL b AS VARIANT
                    
                        s = "3.5"
                        a = s 
                    
                        b = 2
                    
                        SELECT CASE VARIANTVT(A)
                        CASE %VT_BSTR
                            MSGBOX "String"
                            a = VAL(VARIANT$(a)) * VARIANT#(b)
                        CASE %VT_R8
                            MSGBOX "Double"
                            a = VARIANT#(a) * VARIANT#(b)
                        END SELECT
                        
                        SELECT CASE VARIANTVT(A)
                        CASE %VT_BSTR
                            MSGBOX "String"
                            a = VARIANT$(a) + " text"
                        CASE %VT_R8
                            MSGBOX "Double"
                            a = STR$(VARIANT#(a)) + " text"
                        END SELECT
                            
                        MSGBOX VARIANT$(a)
                        MSGBOX STR$(VARIANT#(b)) 
                    
                    ' B is optimized since we know its type throughout the function and it can't be changed. B is locally defined (in my example) and not passed to a function BYREF that can change its value/type. In fact, in this case b could be defined as LONG and provide the Str$/Val functions where required. No need to use a variant. 
                                                  
                    END FUNCTION

                    Comment


                    • #30
                      Originally posted by John Spikowski View Post
                      Keep in mind that we are creating a converter for a legacy version of VB that may have lost most of it's users to VB.NET. How many developers do you think are still using VB6? I see this utility as a means of converting old VB applications that need a second life and a way to use a huge library of code in PowerBASIC.

                      John
                      The earlier adopters of .NET would never have moved to PowerBASIC. The VB6 application that are still VB6 because the company/developers don't want to move to .NET. These hold outs are the ones that would use such a product to move to PowerBASIC. If these users knew about PowerBASIC and had a tool to help move the code (VB2PB), these users may jump at the chance to make the move.

                      In addition, I think this opens a great opportunity to those of us that know PowerBASIC to become consultants on these products. I've also mentioned this opportunity is closing. It's closing because VB6 is a discontinued product and these hold outs will have to make a decision to move to an alternative. Since .NET does have a "VB 6 to .NET converter" upgrade path this is the most likely path at this time. Of course, I worked on a VB3 project not that many years ago (Vb6 was out at the time).

                      Comment


                      • #31
                        Originally posted by Brian Chirgwin View Post
                        In addition, I think this opens a great opportunity to those of us that know PowerBASIC to become consultants on these products.
                        Agree 100%, also worth mentioning (re your comments in earlier post) that if the conversion involves VB work before the VB is palateble to the conversion process, it creates a potential problem for corporate clients whose due diligence would pick up that what is being converted is not their old bombproof code of many years standing, but a young untried scion of same, which could complicate the resolution of issues with the new code. I would certainly identify this as a weakness if I was investigating code migration options.

                        Having said which, every journey starts with a single step, etc etc. But it's best to keep an eye on potential commercial issues as you go along.

                        Comment


                        • #32
                          The question of how much VB6 code is really out there is one I raised earlier. It occurs to me there may be more than one would first think. I believe I read somewhere that Visual Basic was by a wide margin the most used programming language in the world. Also, programming languages never really die. There are still a fair number of QB45 programmers out there. In my particular case, as late as around 2005 or so I was doing major re-engineering work on a massive VB project I started in VB4, worked on heavily in VB5, and finally perfected in VB6. The thing requires me to have VB4 through 6 installed on the development computer because it uses OCX/ActiveX controls from all those versions. Imagine that! Everyone isn't always using the very latest software.
                          Fred
                          "fharris"+Chr$(64)+"evenlink"+Chr$(46)+"com"

                          Comment

                          Working...
                          X