Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

Learning Curve Estimate

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

    Learning Curve Estimate

    Hi! :)

    I am in a bind and am looking for an "objective" opinion. Here is my situation:

    I have been given the assignment to create a custom inventory program using A5. Feature list is further down. A two-week time frame is set up. Although I can program comfortably in QuickBASIC (Don't laugh; it works great!), and have some familiarity with C++, I have only worked with database programming once, for a couple of weeks, years ago, with dBase IV (Are you still laughing!). I have not done any serious OOP. I felt confident that I could learn enough of A5 to succeed. (Hey, if a non-programmer can learn it ....)

    Feature list:
    1) User access, to keep tabs on who is moving inventory.
    2) Admin util menu, to keep tabs on the people (hehe).
    3) Barcode scanner interface, using the scanner described in an A5 3-part article (sorry, I do not remember the reference #).
    4) Barcode label printing, probably on large labels.
    5) Items serialized.
    That is probably detailed enough to give you the idea.

    For some reason, this program is killing me! I seem to have some mental block about not being able to 'input code' and to 'read the listing' (i.e., non-OOP style). It does not help anything that the A5 "help" is a collection of individual files done in PDF. Do the manual creators know how bloated and slow Acrobat really is? or how long it takes to open multiple manuals and have to do individual searches for key phrases? (Am I babbling now? Sorry, I need sleep!)

    I would love your opinion, whether you praise my effort or curse my stupidity. :> I promise not to return flames -- I do not have the time, if nothing else! hehe I will probably wind up showing this thread to my boss. I really do not care whether the replies here are good or bad towards me -- I just need to get this second opinion!

    Q1: Is this approximate goal realistic for me with my approximate situation? (me specifically)

    Q2: What would be some idea of a learning curve for someone with some prior programming experience? (not me specifically)

    Q3: With no prior programming experience?

    Q4: Am I stupid?

    BTW: This project was due to be delivered to our client one week ago. *sigh*

    #2
    RE: Learning Curve Estimate

    Wow! I did not realize I typed so much. Sorry! :(
    (But, please read it anyway! hehe)

    Thank you!

    Comment


      #3
      RE: Learning Curve Estimate

      The lack of experience with dBase or relational database designs might be more of an obstacle than you are imagining.

      Recommendations:

      1) spend the time req'd to do the tutorial ('Getting Started with Alpha Five').

      2) spend time getting the design of your tables right before spending time building the input forms or reports.

      The deadline you've described would be feasible for someone who understood how to link related tables together effectively, and was also familiar with Alpha Five. However, it occurs to me that your description of the end product has some gaps.

      Is this a stand alone app, or will it live on a LAN, with multipl operators interacting with it?

      Will the app have to interface with other programs or data sources?

      Archive / backup to be included ?

      Reports ?

      Labels ?

      Security ?

      Documentation ?

      ...

      -- tom

      Comment


        #4
        RE: Learning Curve Estimate

        Hi! :)

        Thank you for responding!

        The app is supposed to be stand-alone, on a single-user PC, but have capability for multiple users (one at a time).

        From what I understand about the barcode scanner interface(I have not done more than glance at it yet), when it has finished running, I will have a text file of scanned data to import into A5.

        Archive and backup functionality to be implemented at a later date. :>

        Yes, reports, probably just a few for physical inventory or shelf-fullness type stuff.

        Labels with barcodes on them was the idea that got all of this started. So, yes, they want labels (with 6 lines of information each).

        Security required is probably light to medium level. The supervisor does not distrust his employees, but he does want to know who is moving things around for control purposes.

        Documentation? SHHHHHHHH!! Don't ever let me hear you say that word again! hehe Certainly do not mention it to out client! :> Really, the idea is that the program is supposed to be simple enough to use that it becomes self-explanitory.

        Feel free to ask any other questions you like. :) I will likely be awake for quite a while tonight (01:41 now, here in Texas).

        Comment


          #5
          RE: Learning Curve Estimate

          Hi Kenneth,

          I come from a limited programming background, I was so suprised to find out what I could do without programming in Alpha, that I decided to learn Xbasic to see what the possibilities were.

          I suprised myself last night and completed a very nice electronic funds transfer (EFT) solution that automatically generates the required files and send them to the bank.

          The curve is not steep at all, and if you dedicate the two weeks it (your requirements) should be "mostly" achievable.

          As an alternative to the Xbasic reference guide in PDF, why not use the .chm (Windows help) files, its much better and they are downloadable.

          As a vote of confidence. I am consulting full time for a Multinational Nasdaq listed company and in my spare time (I dont sleep) I have been using Alpha for two months and have sold two solutions already.

          Regards

          /Shahin
          Johannesburg - South Africa

          Comment


            #6
            RE: Learning Curve Estimate

            Hi! :)

            Thank you for your response also!

            This is an interesting observation: Tom, who programs, tells me that the curve is steep, but Shahin, who does not program, tells me that it is small. Those opinions come from the opposite people from what I expected! ("Um, that sentence somehow seems very wrong." "Hmm, go away, Pink Elephant!") In desperation for sanity, I wonder if those responses from programmers/non-programmers might be typical.

            Hey, are you familiar with a song called, "Pata Pata?" I forgot the name of the lady who sings it. (Maybe the Pink Elephant will remind me.) She says something about 'this is how we do it [dance] down Johannesburg way.' It's a pretty cool song!

            Anyway, must get back to it -- not much time left before the sun comes up!

            Comment


              #7
              RE: Learning Curve Estimate

              Kenneth

              The are many issues here. If you are trying to do something simple and can use simple forms, and action scripting for everything, the program learning curve is fast. On the other hand, if what you want is more complex, the learning curve gets steeper quickly. This is true for many programs.

              The first learning curve is understanding databases in general. How do you structure tables, relationships, etc. This learning curve can be steep itself and has nothing to do with the program. It is also an area where many users do a poor job, and the result is complex and confusing. Next, what is involved in an inventory program? This may sound simple, but anyone who has built one knows it can get complex very quickly. Finally, what can the user work with and accept. What are their limitations as far as computer literacy. All these things need resolved before you even open any program to begin.

              After these issues are resolved, which may take more than 2 weeks themselves, then the programming process begins. If you have never uses Alpha or other modern database programs, you first have to learn the program. This can take hours, days, months, years, depending on how deeply you get into the program. The basics are easy in Alpha, but it may take all 2 weeks just to read the documentation!

              If I only had 2 weeks full time (80 hours), the resulting inventory program would be fairly basic, and I would start with an existing boilerplate, perhaps something from Alpha Sports. The first 80% of the project takes 20% of the time. It is the last 20% that is the killer. I have seen this many times and it does seem to hold true. Security and maintenance options, trapping user events to prevent incorrect use, debugging your code, menus, toolbars, etc can add considerable time. Doing these right is the difference between a program that sorta works, and one that is professional. Testing time itself can take many hours or days.

              I once built an inventory system for myself in about 2 hours using Alpha Sports as a template. It works fine, but I wouldn't give it to anyone else. None of the little details are done and it is too easy to someone not familiar to really mess it up. An inventory system, by definition must be bulletproof, or its value is limited.

              Jerry

              Comment


                #8
                RE: Learning Curve Estimate

                Kenneth:

                I�m in the same camp as Tom, but let me add some additional reasons for that perspective. As far as database programs go, Alpha Five is far and away the easiest to learn, set up, and use. No other db program does so much so easily and yet it doesn�t give up one ounce of power or flexibility. In fact, in some ways, it provides even greater power than their competitors. You can do marvelous things in A5 without writing a single line of code. If you have the urge, or feel it�s needed for your specific requirements, you can become an expert Xbasic programmer. So from that perspective, you clearly made an outstanding choice.

                [have been given the assignment to create a custom inventory program using A5. Feature list is further down. A two-week time frame is set up]

                Two weeks? Hmmmmmmmmmmmmmmm, are you serious?

                I don�t mean that as a personal attack, but I think you�re goal is unrealistic and it could turn into a big mistake. I don�t say this to make you feel guilty, I want you to consider that even professional database designers rarely, if ever, try to design an important, complex application in two weeks. How in the world can someone who is just beginning do something professionals wouldn�t attempt? I am not trying to offend you, believe it or not, I�m really trying my best to help by giving you a realistic response. Hopefully this is an honest answer to the questions you raised.

                Learning how to create a professional, efficient database design is a different story, it takes months or even years to learn those concepts. There are theories of database design that most people find confusing at the very least, and complex at the other extreme. It�s my opinion [just like Tom] that the steep learning curve isn�t with Alpha Five, it�s learning database theory. This doesn�t mean that you have to wait months or years to start designing application, but you should keep that in mind and realize the limitations inherent with a lack of knowledge and/or experience.

                Shahin said he set up and sold two applications after only two months. I don�t know him personally nor his work, and he sounds like a very intelligent guy. I suspect he has a lot more of a programming background than he let on. Maybe he�s just a natural at database design and those skills came to him very quickly. However, I personally would not spend one cent buying a database application from a guy who has only two months of experience. Yes he sold two apps, but without seeing the quality of his work, I would have to be very skeptical. But judging from many of the comments on this board, it apparently happens far more often than I initially thought. I find that a little scary.

                In my opinion, one cannot grasp the fundamentals and the concepts behind the theory in only two months, [let alone your two-week time frame] while simultaneously designing two different A5 applications. But then again, I don�t know Shahin or the others who do that, but as stated above, I�m very skeptical.

                I read one thread recently where an Alpha Five developer asked for help in setting up the Auto Incremental Field Rule for one of his customers. Hmmmmmmmmmm, one of his customers?

                I was literally floored. How in the world can you be a developer if you don�t even understand the basics? Unfortunately, that type of amateur programming is far more pervasive than I once believed, and it isn�t a good thing for their customers or the reputation of Alpha Five. Every one obviously starts out as a beginner, but you should not be developing programs for customers until you know what you�re doing.

                I don�t say any of this to discourage you, only to clarify where I believe you�ll find the learning curve is indeed very steep. Once again, you can probably learn how to use Alpha Five in a relatively short period of time, but it won�t happen within your two-week parameter. I can�t speak for anyone else, but I think the thought of learning A5 and setting up an application in that time is a foolish goal.

                One important concept of database design is getting it right from the start. If the basics are in place, then you can easily and quickly make changes to meet your needs down the road. Conversely, if you start out with a flawed design because of a lack of knowledge, you only get deeper and deeper into big time trouble.

                One only has to look at some of the very strange questions on this board to realize that. Many questions are good ones and then there are questions where people are trying to do things flat out backwards. They are trying to force a square object in a round hole and it just isn�t going to happen. You read the question and ask yourself, why are they trying to do that, knowing there is a much easier and far more efficient alternative? Of course the answer is obvious, they ask those types of questions because they have no clue about relational theory and database design They�re trying to design applications using what is obviously a seriously flawed approach.

                This is not an indictment of those people because everyone starts from that same position and they must go through the all-important learning/experience curve. I know from personal experience as I look back in amazements at the hundreds of stupid mistakes I made during the first couple of years of database design. It took a long time before I finally learned the all-important concepts and I�m still learning every day. I would emphatically state there are skills I still haven�t come close to mastering. Even after several years of programming in A5, I wouldn�t even begin to consider myself an expert because I still have so much to learn.

                In other words, everyone goes through this steep learning curve. The important thing is a dose of reality. One must realize the curve exists and that you cannot learn relational theory and simultaneously design an important database application in only two weeks. You, nor anyone else, should be designing important apps until you learn the fundamentals of database design/theory and then you can quickly and relatively easily learn the basics of this fabulous program called Alpha Five.

                And while I�m at it, this is a great place to learn. The people on this board are truly wonderful, they will work with and help anyone. Let me conclude by repeating that my comments are in no way intended as a personal attack upon you so I hope you�re not offended. I merely tried to answer your questions in the most honest and realistic manner possible. And please don�t let me discourage you, I know you can definitely accomplish your goal, but I think you have to set up more realistic parameters that go well beyond the two-week time frame.

                Robert T

                Comment


                  #9
                  RE: Learning Curve Estimate

                  Kenneth,

                  I won't comment on learning curve, as others have already
                  spoken about it. I will speak about bar code printing. Many
                  years ago, while working for a company that subsequently
                  betrayed me :( , I needed to print Bar Codes also. I had exactly 24hrs to fly to Indianapolis and figure out how to
                  make Bar Codes come out of the printer. The hardest part
                  was reading the "printer manual". The whole trick is
                  learning the control codes that need to be sent to the
                  printer to initialize the bar code mode. Bottom line, it
                  should not be too hard for you to make the bar code.

                  BTW, I believe the lady's name was Mariam Makeba, which tells me you are also a folk music fan.

                  regards,
                  Melvin Davidson

                  Comment


                    #10
                    RE: Learning Curve Estimate

                    Robert spoke very eloquently about the theory and design aspects of databases. I cannot add to that. One thing I can say having a great deal of experience is that YOU, as the designer, need to know HOW your client does their job. Yes, you probably can design a very generic system that might be acceptable. You were brought in to design and develop a CUSTOM application! Do not underestimate the signifigance of that word.

                    Agreeing with Robert, I can't believe you (or anyone) could
                    1) Learn Database and relational concepts
                    2) Learn Alpha software
                    and
                    3) UNDERSTAND THE REQUIREMENTS OF THE JOB
                    4) Design a custom application
                    in just 2 weeks.

                    I don't know your level of expertise in inventory control, but truly understanding the requirements of the customer alone would take more than 2 weeks. Don't take this as a slam, but like Robert, I want you to go into this with your eyes open. If you use a realistic timeframe, Alpha 5 will help you to design and program an excellent system that will allow you to grow your business.

                    Tom

                    Comment


                      #11
                      RE: Learning Curve Estimate

                      I would like to take a moment to thank everyone who sent me private emails, expressing almost complete agreement on this most frustrating issue for people who care about professionalism and maintaining at least a reasonable level of competency before you sell applications to clients.

                      Robert T.

                      Comment


                        #12
                        RE: Learning Curve Estimate

                        Just to add my 2 cents. I agree with everything said previously but will add another aspect...

                        I have been developing databases for other people to use for nearly 15 years. Most of those years have been with Alpha products.

                        When version 5, the latest version, came out, I'd say it took me more than 2 weeks just to get comfortable with the new version. And now, almost a year later, I learn something new about A5 almost every day. (Last week was an exception - I was on vacation.)

                        If someone gave me the job you were given, I'd probably estimate something between 2-4 months. Part of that would be because I have other customers that can't be ignored but, even if it was possible for me to spend 40 hours a week working on it, (a) first, I'd probably go crazy working with such concentration on one project, (b) I'd be less efficient because it would be too easy to get stuck in a rut and spend too much time trying to do something the hard way (it's amazing how a day working on project B change can clear your thinking on project A), and (c) - a very important aspect that new developers tend to miss - I can guarantee that there would be a lot of time wasted waiting for answers to questions that would have to be answered if the final application where to be useful, effective, accurate, etc. It amazes me how often a customer who is in a hurry for the application to be finished can take a week just to respond to a couple questions.

                        Comment


                          #13
                          RE: Learning Curve Estimate

                          Everybody made very good points, but I certainly agree with Cal. I couldn't spend 8 hours a day for two weeks on one project. You have to give your brain time to digest the new ideas and subconciously rearrange concepts.

                          I have a project that is for me (I'm a user, not a developer) so I don't have to understand the customer. I AM the customer. It is not bulletproof, but is very comprehesive. It does about 90%+ of the data management that I require.

                          I spent a month "vacation" in January learning the basics of A5. It then took me to the end of this month to build it (6 months). I am now just starting the help and documentation. I expect the application to be complete in 1 year total. I would say that I spend about 10% of my time on it, though this percentage will now decrease. In retrospect, the project cut the workload down to 25% of what it was, so I kinda "made" the free time available.

                          My guess is that I would have to use it for another 6 months to make it commercial. Not that I plan to. I just want someone else to be able to use it. The system is live, so testing is ongoing.

                          A5 is pretty simple in design, but it is extremely complex in possibilities.

                          Mark

                          Comment


                            #14
                            RE: Learning Curve Estimate

                            It amazes me how often a customer who is in a hurry for the application to be finished can take a week just to respond to a couple questions.

                            Hurry up and wait!

                            This is a universal phenomenon in the business world. The client takes weeks to sign the proposal, then faxes it to you and calls five minute later and says can I have the it done next week? Yeah, right!
                            Peter
                            AlphaBase Solutions, LLC

                            [email protected]
                            https://www.alphabasesolutions.com


                            Comment

                            Working...
                            X