Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "session_events": [
- {
- "type": 4,
- "data": {
- "href": "http://localhost:5000/",
- "width": 1422,
- "height": 741
- },
- "timestamp": 1568366883621
- },
- {
- "type": 2,
- "data": {
- "node": {
- "type": 0,
- "childNodes": [
- {
- "type": 1,
- "name": "",
- "publicId": "",
- "systemId": "",
- "id": 2
- },
- {
- "type": 2,
- "tagName": "html",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "head",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 5
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "http-equiv": "content-type",
- "content": "text/html; charset=utf-8"
- },
- "childNodes": [],
- "id": 6
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 7
- },
- {
- "type": 2,
- "tagName": "title",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short, Self Contained, Correct Example",
- "id": 9
- }
- ],
- "id": 8
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 10
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "author",
- "content": "Andrew Thompson edited by Ryan Stewart & Lewis Bloch"
- },
- "childNodes": [],
- "id": 11
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 12
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "description",
- "content": "Describes the short, self contained,\ncorrect example. A useful technique for debugging."
- },
- "childNodes": [],
- "id": 13
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 14
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "last-updated",
- "content": "2014-02-19"
- },
- "childNodes": [],
- "id": 15
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 16
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "keywords",
- "content": "bug, debug, problem, fix, help, example, source,\ncode, java, javascript, html, css, styles, layout"
- },
- "childNodes": [],
- "id": 17
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 18
- },
- {
- "type": 2,
- "tagName": "style",
- "attributes": {
- "type": "text/css"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n.centerFooter {\n\ttext-align: center;\n\tfont-size: 90%;\n}\nbody {\n\tfont-size: 100%;\n\tfont-family: helvetica, arial, sans-serif;\n\tbackground-color: rgb(250,247,241);\n}\n",
- "isStyle": true,
- "id": 20
- }
- ],
- "id": 19
- },
- {
- "type": 3,
- "textContent": "\n\n\n",
- "id": 21
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "src": "https://cdn.jsdelivr.net/npm/rrweb@latest/dist/rrweb.min.js"
- },
- "childNodes": [],
- "id": 22
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 23
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "src": "http://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js",
- "integrity": "sha256-yr4fRk/GU1ehYJPAs8P4JlTgu0Hdsp4ZKrx8bDEDC3I=",
- "crossorigin": "anonymous"
- },
- "childNodes": [],
- "id": 24
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 25
- }
- ],
- "id": 4
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 26
- },
- {
- "type": 2,
- "tagName": "body",
- "attributes": {
- "class": "nopad"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 28
- },
- {
- "type": 2,
- "tagName": "h1",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "The SSCCE",
- "id": 30
- }
- ],
- "id": 29
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 31
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short, Self Contained, Correct (Compilable), Example",
- "id": 33
- }
- ],
- "id": 32
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 34
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If you are having a problem with some code and seeking help,\npreparing a Short, Self Contained, Correct Example (",
- "id": 36
- },
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Short, self contained, correct example"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "SSCCE",
- "id": 38
- }
- ],
- "id": 37
- },
- {
- "type": 3,
- "textContent": ") is very\nuseful. But what is an SSCCE?",
- "id": 39
- }
- ],
- "id": 35
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 41
- }
- ],
- "id": 40
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It is all in the name, really. Take a look at each part. The\nversion prepared for others to see should be:",
- "id": 43
- }
- ],
- "id": 42
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 44
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 46
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short",
- "id": 49
- }
- ],
- "id": 48
- },
- {
- "type": 3,
- "textContent": " (Small) - Minimise bandwidth for the example,\ndo not bore the audience.",
- "id": 50
- }
- ],
- "id": 47
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 51
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Self Contained",
- "id": 54
- }
- ],
- "id": 53
- },
- {
- "type": 3,
- "textContent": " - Ensure everything is included,\nready to go.",
- "id": 55
- }
- ],
- "id": 52
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 56
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Correct",
- "id": 59
- }
- ],
- "id": 58
- },
- {
- "type": 3,
- "textContent": " - Copy, paste, (compile,) see is the aim.",
- "id": 60
- }
- ],
- "id": 57
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 61
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example",
- "id": 64
- }
- ],
- "id": 63
- },
- {
- "type": 3,
- "textContent": " - Displays the problem we are trying to solve.",
- "id": 65
- }
- ],
- "id": 62
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 66
- }
- ],
- "id": 45
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 67
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "short",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short",
- "id": 70
- }
- ],
- "id": 69
- }
- ],
- "id": 68
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 71
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "This depends on the group or forum. For a public forum,\nmost readers will stop reading by 100 lines of code,\nand start complaining at 250-300 lines of code.",
- "id": 73
- }
- ],
- "id": 72
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 74
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "trim",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Tricks for Trimming",
- "id": 77
- }
- ],
- "id": 76
- }
- ],
- "id": 75
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 78
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the GUI has 40 buttons not related\nto the problem, remove them. If they ",
- "id": 80
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "are",
- "id": 82
- }
- ],
- "id": 81
- },
- {
- "type": 3,
- "textContent": "\nrelated to the problem (you remove them and the\nproblem disappears) put one or two back in,\nif the problem reappears, include ",
- "id": 83
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "only",
- "id": 85
- }
- ],
- "id": 84
- },
- {
- "type": 3,
- "textContent": "\nthose one or two buttons.",
- "id": 86
- }
- ],
- "id": 79
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 87
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "The array or table that is causing a problem\nmay have a hundred entries, but again, if the\nproblem can be seen with two or three entries,\ntrim the example to that alone.",
- "id": 89
- }
- ],
- "id": 88
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 90
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the problem is a GUI layout problem,\ntrim all the processes (JavaScript/Java methods\netc.) from behind it. On the other hand, if\nthe app. has a GUI but the problem ",
- "id": 92
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "is",
- "id": 94
- }
- ],
- "id": 93
- },
- {
- "type": 3,
- "textContent": "\nthe processing, trim the GUI to a minimal\nversion.",
- "id": 95
- }
- ],
- "id": 91
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 96
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If trimming a very large amount\nif code for others to see, you might trim out\na part of it early on that you think is not\nrelated to the problem, yet the problem is fixed. ",
- "id": 98
- }
- ],
- "id": 97
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 99
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "solution",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Problem Solved?",
- "id": 102
- }
- ],
- "id": 101
- }
- ],
- "id": 100
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 103
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "By identifying more clearly where the problem\noccurs, you have just made an important step toward\nsolving it. The process that highlights\nwhere a problem ",
- "id": 105
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "originates",
- "id": 107
- }
- ],
- "id": 106
- },
- {
- "type": 3,
- "textContent": " can, in itself,\nhelp to solve it. You might look more closely\nat the part cut out, and in doing so, spot the\nproblem.",
- "id": 108
- }
- ],
- "id": 104
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 109
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Even if you cannot see why the\nproblem occurs, you have still made an\nimportant step: identifying (at least part)\nof the code involved. ",
- "id": 111
- }
- ],
- "id": 110
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 112
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the code being trimmed is now a concise\nexample of the problem, it is ready to present\nto others, if not, put the problem code back\nin and continue trimming other areas of the\ncode until it is.",
- "id": 114
- }
- ],
- "id": 113
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 116
- }
- ],
- "id": 115
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "selfcon",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Self Contained",
- "id": 119
- }
- ],
- "id": 118
- }
- ],
- "id": 117
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 120
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It is important to ensure that the code\ngiven to others can be 'copied, pasted, compiled,\nrun' so that they can help quickly and\nwith a minimum of fuss.\n",
- "id": 122
- }
- ],
- "id": 121
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "This means that after the code has been\ncopied, pasted and compiled by those helping,\nthey can run it and ",
- "id": 124
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "see",
- "id": 126
- }
- ],
- "id": 125
- },
- {
- "type": 3,
- "textContent": " the results\nfor themselves. It is the ",
- "id": 127
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "example",
- "id": 129
- }
- ],
- "id": 128
- },
- {
- "type": 3,
- "textContent": " of\nthe problem.",
- "id": 130
- }
- ],
- "id": 123
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 131
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "You are much more likely to receive help if you do this.",
- "id": 133
- }
- ],
- "id": 132
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 134
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "selfcontained",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "How to make an example self contained.",
- "id": 137
- }
- ],
- "id": 136
- }
- ],
- "id": 135
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 138
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the code performs I/O to files,\nreplace the file I/O with dummy data structures in\nproblems that are unrelated to input/output.\n",
- "id": 140
- }
- ],
- "id": 139
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 141
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the problem ",
- "id": 143
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "is",
- "id": 145
- }
- ],
- "id": 144
- },
- {
- "type": 3,
- "textContent": " the input and textual input can be used, prepare\na short example that can be copied for the actual file data.\n",
- "id": 146
- }
- ],
- "id": 142
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 147
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nShould the problem happen\nonly under load, insert code to simulate\nthat load. If a layout problem only occurs\nunder particular circumstances,\n",
- "id": 149
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "force",
- "id": 151
- }
- ],
- "id": 150
- },
- {
- "type": 3,
- "textContent": " those things to happen, if\nit is practical to do so.\n",
- "id": 152
- }
- ],
- "id": 148
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 153
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nObviously there are things that cannot\nbe included in an example that is posted\nto a forum, 'a database' etcetera,\nbut many times you just need a bit of\nlateral thinking to come up with a way to\nreplace something you thought was 'vital'\nto demonstrate a problem.\n",
- "id": 155
- }
- ],
- "id": 154
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 156
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "One example of lateral thinking is 'images'.\nImages related to code problems might seem difficult\nto replace. But one trick is to link to an image\navailable on the web, one that displays the same problem.\nTry to make\nany web based images 'small' in bytes - if at all possible.\n",
- "id": 158
- }
- ],
- "id": 157
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 159
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "co",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Correct",
- "id": 162
- }
- ],
- "id": 161
- }
- ],
- "id": 160
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 163
- },
- {
- "type": 2,
- "tagName": "blockquote",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If my example was correct, ",
- "id": 165
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "what would I be doing here?",
- "id": 167
- }
- ],
- "id": 166
- }
- ],
- "id": 164
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 168
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "(Laughs) No, that is not what 'correct' means in this context.\nIn this document, correct (or compilable, which particularly\nrelates to computer source code) means ensuring that\nthe example fits the accepted standards and protocols.\n",
- "id": 170
- }
- ],
- "id": 169
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nTo achieve that, it is necessary to:\n",
- "id": 172
- }
- ],
- "id": 171
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 173
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "linewidth",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Line width",
- "id": 177
- }
- ],
- "id": 176
- },
- {
- "type": 3,
- "textContent": "\nKeep the width of the lines in the\nexample to under 62 characters wide.\n(but please do ",
- "id": 178
- },
- {
- "type": 2,
- "tagName": "b",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "not",
- "id": 180
- }
- ],
- "id": 179
- },
- {
- "type": 3,
- "textContent": " remove all line indents!)\nNewsreaders typically force a line wrap at\naround 72 characters (and it pays to 'play it safe\nby using less than that).\n",
- "id": 181
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Sometimes",
- "id": 183
- }
- ],
- "id": 182
- },
- {
- "type": 3,
- "textContent": " line wrap does not\ncause any problem with the example, but\nit ",
- "id": 184
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "usually",
- "id": 186
- }
- ],
- "id": 185
- },
- {
- "type": 3,
- "textContent": " does, and means the\nlines need to be rejoined or reconstructed,\nbefore they work as intended.\n",
- "id": 187
- },
- {
- "type": 2,
- "tagName": "br",
- "attributes": {},
- "childNodes": [],
- "id": 188
- },
- {
- "type": 3,
- "textContent": "Most code/source editors will show a column width along the top of the editing area.\n",
- "id": 189
- }
- ],
- "id": 175
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 190
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "nameconvention",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Use the naming convention",
- "id": 193
- }
- ],
- "id": 192
- },
- {
- "type": 3,
- "textContent": ", if one exists.\nMost of the people willing to help will be\nusing hints from the formatting of upper\nand lower case letters, as well as their\ndescriptive names, to skim the code in\nthe hope of spotting the problem quickly.\nIf following the conventions the audience is\nused to, it helps them to do that.\n",
- "id": 194
- }
- ],
- "id": 191
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 195
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "valid",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Ensure the example is ",
- "id": 198
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "correct",
- "id": 200
- }
- ],
- "id": 199
- },
- {
- "type": 3,
- "textContent": ". ",
- "id": 201
- }
- ],
- "id": 197
- },
- {
- "type": 3,
- "textContent": "\nEither the example compiles cleanly, or causes the exact error message about which\nneeds solving.\n",
- "id": 202
- }
- ],
- "id": 196
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 203
- }
- ],
- "id": 174
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 204
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Further tips:\n",
- "id": 206
- }
- ],
- "id": 205
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 207
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 209
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Move all resources (CSS/JS/Java source, images etc.) to the same\ndirectory, so they are easier to administer, and easier to find.\n",
- "id": 211
- }
- ],
- "id": 210
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Remove package statements from Java code.\n",
- "id": 213
- }
- ],
- "id": 212
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Demote public Java classes to default. If the language\nspecifies only a single public class per source code\nfile, demote all the other classes to default. This\nallows the example to be compiled without being split\ninto separate files.\n",
- "id": 215
- }
- ],
- "id": 214
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 216
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Validate the example, where a validator is available.\n",
- "id": 218
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 220
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "HyperText MarkUp Language"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "HTML",
- "id": 223
- }
- ],
- "id": 222
- },
- {
- "type": 3,
- "textContent": " ",
- "id": 224
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://validator.w3.org/",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "validator",
- "id": 226
- }
- ],
- "id": 225
- }
- ],
- "id": 221
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 227
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Cascading Style Sheets"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "CSS",
- "id": 230
- }
- ],
- "id": 229
- },
- {
- "type": 3,
- "textContent": " ",
- "id": 231
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://jigsaw.w3.org/css-validator/",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "validator",
- "id": 233
- }
- ],
- "id": 232
- }
- ],
- "id": 228
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 234
- }
- ],
- "id": 219
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 235
- }
- ],
- "id": 217
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 236
- }
- ],
- "id": 208
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 237
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "eg",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example",
- "id": 240
- }
- ],
- "id": 239
- }
- ],
- "id": 238
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 241
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Make sure the posted code, displays the problem!",
- "id": 244
- }
- ],
- "id": 243
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 245
- }
- ],
- "id": 242
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nYou have worked on the example for hours, perhaps\ndays. It feels like forever. Now is a good time to\ntake a breather, step back, stretch, perhaps go for a\nrefreshing walk.\n",
- "id": 247
- }
- ],
- "id": 246
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 249
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Refresh the computer as well.",
- "id": 251
- }
- ],
- "id": 250
- },
- {
- "type": 3,
- "textContent": " Reboot it\nif necessary.\n",
- "id": 252
- }
- ],
- "id": 248
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nNow open the pages, or program, where the problem\noccurs. Is it still there?\n",
- "id": 254
- }
- ],
- "id": 253
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nPerhaps 99% of the time it is (maybe less if\nusing a less reliable operating system).\n",
- "id": 256
- }
- ],
- "id": 255
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nNow, if the problem is still there, post the example.\n",
- "id": 258
- }
- ],
- "id": 257
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 259
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "extra",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example - Extra Points",
- "id": 262
- }
- ],
- "id": 261
- }
- ],
- "id": 260
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 263
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "We wish we had a dollar for every person who asked\nfor help about a web page or the stylesheet for one,\nsome JavaScript code, or a Java Applet - and did not\nprovide a link. We would not need to supply and maintain this document,\ninstead we would be sunning ourselves on a beach in an exotic\nlocation, drinking still more exotic cocktails.",
- "id": 265
- }
- ],
- "id": 264
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 266
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Why do people miss such an opportunity? Very\nfew things are as tempting as a link to the problem.\nTo a seasoned forum helper, it is almost as\ntempting as a small bottle with the vague\nmessage 'drink me', ..or an exotic cocktail.",
- "id": 268
- }
- ],
- "id": 267
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 269
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Having a group of people look at the problem\nhelps to identify and solve the problem at hand,\nas well as ",
- "id": 271
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "compatibility problems",
- "id": 273
- }
- ],
- "id": 272
- },
- {
- "type": 3,
- "textContent": " (which\nmight be the cause of the problem all along).",
- "id": 274
- }
- ],
- "id": 270
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 275
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "standards",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Standards on the Internet",
- "id": 278
- }
- ],
- "id": 277
- }
- ],
- "id": 276
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 279
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nTherein lies another 'gotcha' when dealing with\nmost things related to the internet.\nThe internet, as well as most things\nassociated with it, is just a little bit wild.\nFor every standard there are two alternates.\nFor every rule there are at least three exceptions\nto the rule.\n",
- "id": 281
- }
- ],
- "id": 280
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 282
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "To start with, browsers do not work the same.\nWe are not just referring to differences between\nIE and Netscape, or old and new browsers, but 'Internet\nExplorer 5' for the Macintosh, for example, is a\n(significantly) different browser from 'Internet\nExplorer 5' for Windows.",
- "id": 284
- }
- ],
- "id": 283
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 285
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "People asking for help on web-design groups are often\nsurprised to hear that the problem they are\nexperiencing with a web page does not even\nshow for others using different browsers.",
- "id": 287
- }
- ],
- "id": 286
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 288
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "devapplet",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Java Applets",
- "id": 291
- }
- ],
- "id": 290
- }
- ],
- "id": 289
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 292
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nAnother level of complexity, and more chance\nof problems, is introduced when Applets are\nin the web page. How the random clutch of browsers mentioned\nabove will react to (often poorly formed) html and styles,\nwith Applets thrown into the mix as well, is another\nmatter again. Here is just one example.\n",
- "id": 294
- }
- ],
- "id": 293
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 295
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nFor a long time MicroSoft was shipping the\nInternet Explorer browser with an ",
- "id": 297
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "older version of Java",
- "id": 299
- }
- ],
- "id": 298
- },
- {
- "type": 3,
- "textContent": "\n(a version 1.1\n",
- "id": 300
- },
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Java Virtual Machine, the emulator in which Java Applets run."
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nJVM",
- "id": 302
- }
- ],
- "id": 301
- },
- {
- "type": 3,
- "textContent": ").\nAfter some events happened, MS put\nthe ",
- "id": 303
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "latest Java",
- "id": 305
- }
- ],
- "id": 304
- },
- {
- "type": 3,
- "textContent": " engines into its browsers. Soon\nafter that, they began to supply the IE with ",
- "id": 306
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "no JVM\nat all",
- "id": 308
- }
- ],
- "id": 307
- },
- {
- "type": 3,
- "textContent": ".\n",
- "id": 309
- }
- ],
- "id": 296
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 310
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nGiven the possible complications with Applets,\nit is fortunate that they are so easy to check\nwhen on they are on the internet. A few clicks\nand someone on the other side of the planet\ncan be reading the output from the Java console\nof ",
- "id": 312
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "their own browser",
- "id": 314
- }
- ],
- "id": 313
- },
- {
- "type": 3,
- "textContent": " or, sometimes, see the Applet\nworking perfectly.\n",
- "id": 315
- }
- ],
- "id": 311
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 316
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf the Applet that fails for you works in someone else's browser,\nit helps to quickly narrow the scope of the problem to the html,\nthe applet tag, or the JVM installed in the browser\n(or complete lack of one).\n",
- "id": 318
- }
- ],
- "id": 317
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 319
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "bother",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Why bother?",
- "id": 322
- }
- ],
- "id": 321
- }
- ],
- "id": 320
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 323
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "A very good question. Why go to all this effort?\n",
- "id": 325
- }
- ],
- "id": 324
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 326
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nPerhaps someone can understand the problem\nyou describe from the description you give.\nMaybe it is one of those things that a\nthousand people before have stumbled on.\n",
- "id": 328
- }
- ],
- "id": 327
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 329
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf you have already checked the FAQ,\nGoogled the forum, read the ..flaming\nmanual it is unlikely that an answer\nwill pop up that easily. You ",
- "id": 331
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "have",
- "id": 333
- }
- ],
- "id": 332
- },
- {
- "type": 3,
- "textContent": "\ndone those things, haven't you?\n",
- "id": 334
- }
- ],
- "id": 330
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 335
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf wasting the time and bandwidth of\nthe other members of a public forum, you\nrisk members of the group delivering\nshort sharp rebukes.\n",
- "id": 337
- }
- ],
- "id": 336
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 338
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nThe people who contribute to the groups\ngive a wide range of advice. Sometimes\nthe advice works, sometimes it does not,\nbut either way, the advice is free.\n",
- "id": 340
- }
- ],
- "id": 339
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 341
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nContributors do so for a variety of reasons,\nincluding the nice feeling they get when\nthey can pass on a piece of knowledge relating\nto their chosen field to someone who is learning.\n",
- "id": 343
- }
- ],
- "id": 342
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 344
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nUnfortunately, if someone asks to be\nspoon fed information that is contained\nin a basic tutorial, it is a strong indication\nthat the questioner does not so much want\nto learn as get others to do work they should\nbe doing themselves.\n",
- "id": 346
- }
- ],
- "id": 345
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 347
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf there is a piece of code\nand you wish to have it written, finished\nor fixed by others, there are plenty of\navenues to achieve that. For a modest amount of\nmoney, you can get most IT work completed (or done)\nthrough a number of internet based outsourcing\ncompanies.\nThat is what such companies specialize in.",
- "id": 349
- }
- ],
- "id": 348
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 350
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Free forums are for\npeople to learn.",
- "id": 352
- }
- ],
- "id": 351
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 353
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Having said that:\n",
- "id": 355
- }
- ],
- "id": 354
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 356
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nLet us assume you are indeed genuine\nin your learning, you have a huge, complex system\nwith an occasional, unpredictable bug, and you\n",
- "id": 358
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "have",
- "id": 360
- }
- ],
- "id": 359
- },
- {
- "type": 3,
- "textContent": " searched the FAQ & Group,\nstudied the manual or documentation and not\nproduced an answer.\n",
- "id": 361
- }
- ],
- "id": 357
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 362
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nFeel free to describe the problem to the\ngroup; perhaps it is a basic\nmisunderstanding on your part\nthat can easily be cleared up.\n",
- "id": 364
- }
- ],
- "id": 363
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 365
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "b",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "compulsory",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "We",
- "id": 369
- }
- ],
- "id": 368
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "every",
- "rel": "nofollow"
- },
- "childNodes": [],
- "id": 370
- },
- {
- "type": 3,
- "textContent": " are not proposing that every single\nproblem needs a SSCCE in order to be\nsolved. We are also not suggesting an\nexample is, or should be, compulsory.",
- "id": 371
- }
- ],
- "id": 367
- }
- ],
- "id": 366
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 372
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It will, however, make people\nmuch ",
- "id": 374
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "more likely to help",
- "id": 376
- }
- ],
- "id": 375
- },
- {
- "type": 3,
- "textContent": ", and will\ntherefore ",
- "id": 377
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "increase the chance of\nfinding a solution",
- "id": 379
- }
- ],
- "id": 378
- },
- {
- "type": 3,
- "textContent": ".",
- "id": 380
- }
- ],
- "id": 373
- },
- {
- "type": 3,
- "textContent": "\n\n\n",
- "id": 381
- },
- {
- "type": 2,
- "tagName": "div",
- "attributes": {
- "class": "centerFooter"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nWeb hosting compliments of\n",
- "id": 383
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://evolutionhosting.com/pub/evolution.jsp"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Evolution Hosting",
- "id": 385
- }
- ],
- "id": 384
- },
- {
- "type": 3,
- "textContent": " and ",
- "id": 386
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "https://coderanch.com/"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "CodeRanch",
- "id": 388
- }
- ],
- "id": 387
- },
- {
- "type": 3,
- "textContent": ".",
- "id": 389
- },
- {
- "type": 2,
- "tagName": "br",
- "attributes": {},
- "childNodes": [],
- "id": 390
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 391
- }
- ],
- "id": 382
- },
- {
- "type": 3,
- "textContent": "\n\n\n\n\n",
- "id": 392
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "type": "text/javascript",
- "charset": "utf-8"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "SCRIPT_PLACEHOLDER",
- "id": 394
- }
- ],
- "id": 393
- },
- {
- "type": 3,
- "textContent": "\n\n\n\n\n\n",
- "id": 395
- }
- ],
- "id": 27
- }
- ],
- "id": 3
- }
- ],
- "id": 1
- },
- "initialOffset": {
- "left": 0,
- "top": 0
- }
- },
- "timestamp": 1568366883629
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 894,
- "y": 181,
- "id": 196,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366883644
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 894,
- "y": 180,
- "id": 196,
- "timeOffset": -420
- }
- ]
- },
- "timestamp": 1568366884144
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1222,
- "y": 177,
- "id": 196,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366886988
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1240
- },
- "timestamp": 1568366887396
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1310,
- "y": 187,
- "id": 196,
- "timeOffset": -437
- },
- {
- "x": 1310,
- "y": 188,
- "id": 196,
- "timeOffset": -369
- },
- {
- "x": 1302,
- "y": 185,
- "id": 196,
- "timeOffset": -303
- },
- {
- "x": 1297,
- "y": 183,
- "id": 196,
- "timeOffset": -253
- },
- {
- "x": 1296,
- "y": 183,
- "id": 196,
- "timeOffset": -181
- },
- {
- "x": 1294,
- "y": 182,
- "id": 27,
- "timeOffset": -69
- }
- ]
- },
- "timestamp": 1568366887489
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1340
- },
- "timestamp": 1568366887497
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1676.666748046875
- },
- "timestamp": 1568366887598
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1796.666748046875
- },
- "timestamp": 1568366887698
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1710
- },
- "timestamp": 1568366887800
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1683.3333740234375
- },
- "timestamp": 1568366887901
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1293,
- "y": 182,
- "id": 27,
- "timeOffset": -337
- },
- {
- "x": 1292,
- "y": 182,
- "id": 27,
- "timeOffset": -221
- }
- ]
- },
- "timestamp": 1568366887990
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1637.77783203125
- },
- "timestamp": 1568366888001
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1328.888916015625
- },
- "timestamp": 1568366888102
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1238.888916015625
- },
- "timestamp": 1568366888203
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1001.1111450195312
- },
- "timestamp": 1568366888304
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 392.22222900390625
- },
- "timestamp": 1568366888405
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1291,
- "y": 181,
- "id": 196,
- "timeOffset": -288
- },
- {
- "x": 1291,
- "y": 178,
- "id": 175,
- "timeOffset": -222
- }
- ]
- },
- "timestamp": 1568366888491
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 86.66667175292969
- },
- "timestamp": 1568366888506
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 0
- },
- "timestamp": 1568366888607
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1291,
- "y": 177,
- "id": 47,
- "timeOffset": -439
- },
- {
- "x": 1290,
- "y": 177,
- "id": 27,
- "timeOffset": -307
- },
- {
- "x": 1288,
- "y": 177,
- "id": 27,
- "timeOffset": -237
- },
- {
- "x": 1280,
- "y": 181,
- "id": 27,
- "timeOffset": -173
- },
- {
- "x": 1264,
- "y": 185,
- "id": 47,
- "timeOffset": -106
- }
- ]
- },
- "timestamp": 1568366888992
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1265,
- "y": 303,
- "id": 27,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366895212
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1.1111111640930176
- },
- "timestamp": 1568366895435
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 71.11111450195312
- },
- "timestamp": 1568366895535
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 168.88890075683594
- },
- "timestamp": 1568366895636
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1421,
- "y": 335,
- "id": 3,
- "timeOffset": -444
- },
- {
- "x": 1418,
- "y": 338,
- "id": 3,
- "timeOffset": -379
- },
- {
- "x": 1417,
- "y": 338,
- "id": 3,
- "timeOffset": -325
- },
- {
- "x": 1414,
- "y": 338,
- "id": 3,
- "timeOffset": -262
- },
- {
- "x": 1415,
- "y": 340,
- "id": 3,
- "timeOffset": -46
- }
- ]
- },
- "timestamp": 1568366895713
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 460
- },
- "timestamp": 1568366895736
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 555.5555419921875
- },
- "timestamp": 1568366895837
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1414,
- "y": 340,
- "id": 3,
- "timeOffset": -413
- },
- {
- "x": 1388,
- "y": 341,
- "id": 135,
- "timeOffset": -363
- },
- {
- "x": 1285,
- "y": 341,
- "id": 135,
- "timeOffset": -313
- }
- ]
- },
- "timestamp": 1568366896213
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 433,
- "y": 33,
- "id": 100,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366905068
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 401,
- "y": 27,
- "id": 100,
- "timeOffset": -375
- },
- {
- "x": 376,
- "y": 34,
- "id": 100,
- "timeOffset": -295
- },
- {
- "x": 356,
- "y": 17,
- "id": 100,
- "timeOffset": -237
- },
- {
- "x": 340,
- "y": 8,
- "id": 27,
- "timeOffset": -187
- }
- ]
- },
- "timestamp": 1568366905571
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 892,
- "y": 4,
- "id": 27,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366983516
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 556.6666870117188
- },
- "timestamp": 1568366983804
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 657.7777709960938
- },
- "timestamp": 1568366983905
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 966.6666870117188
- },
- "timestamp": 1568366984005
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 738,
- "y": 144,
- "id": 113,
- "timeOffset": -433
- },
- {
- "x": 690,
- "y": 212,
- "id": 27,
- "timeOffset": -367
- },
- {
- "x": 690,
- "y": 213,
- "id": 123,
- "timeOffset": -134
- },
- {
- "x": 690,
- "y": 216,
- "id": 27,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366984016
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1000
- },
- "timestamp": 1568366984106
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1160
- },
- "timestamp": 1568366984206
- },
- {
- "type": 3,
- "data": {
- "source": 3,
- "id": 1,
- "x": 0,
- "y": 1555.5555419921875
- },
- "timestamp": 1568366984307
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 691,
- "y": 214,
- "id": 27,
- "timeOffset": -161
- },
- {
- "x": 692,
- "y": 213,
- "id": 27,
- "timeOffset": -101
- },
- {
- "x": 694,
- "y": 212,
- "id": 27,
- "timeOffset": -50
- }
- ]
- },
- "timestamp": 1568366984517
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1016,
- "y": 31,
- "id": 221,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366987332
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1021,
- "y": 0,
- "id": 217,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568366993013
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1184,
- "y": 28,
- "id": 221,
- "timeOffset": 0
- }
- ]
- },
- "timestamp": 1568367000668
- },
- {
- "type": 3,
- "data": {
- "source": 1,
- "positions": [
- {
- "x": 1207,
- "y": 6,
- "id": 217,
- "timeOffset": -438
- }
- ]
- },
- "timestamp": 1568367001168
- },
- {
- "type": 4,
- "data": {
- "href": "http://localhost:5000/",
- "width": 1422,
- "height": 741
- },
- "timestamp": 1568367155696
- },
- {
- "type": 2,
- "data": {
- "node": {
- "type": 0,
- "childNodes": [
- {
- "type": 1,
- "name": "",
- "publicId": "",
- "systemId": "",
- "id": 2
- },
- {
- "type": 2,
- "tagName": "html",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "head",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 5
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "http-equiv": "content-type",
- "content": "text/html; charset=utf-8"
- },
- "childNodes": [],
- "id": 6
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 7
- },
- {
- "type": 2,
- "tagName": "title",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short, Self Contained, Correct Example",
- "id": 9
- }
- ],
- "id": 8
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 10
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "author",
- "content": "Andrew Thompson edited by Ryan Stewart & Lewis Bloch"
- },
- "childNodes": [],
- "id": 11
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 12
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "description",
- "content": "Describes the short, self contained,\ncorrect example. A useful technique for debugging."
- },
- "childNodes": [],
- "id": 13
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 14
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "last-updated",
- "content": "2014-02-19"
- },
- "childNodes": [],
- "id": 15
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 16
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "keywords",
- "content": "bug, debug, problem, fix, help, example, source,\ncode, java, javascript, html, css, styles, layout"
- },
- "childNodes": [],
- "id": 17
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 18
- },
- {
- "type": 2,
- "tagName": "style",
- "attributes": {
- "type": "text/css"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n.centerFooter {\n\ttext-align: center;\n\tfont-size: 90%;\n}\nbody {\n\tfont-size: 100%;\n\tfont-family: helvetica, arial, sans-serif;\n\tbackground-color: rgb(250,247,241);\n}\n",
- "isStyle": true,
- "id": 20
- }
- ],
- "id": 19
- },
- {
- "type": 3,
- "textContent": "\n\n\n",
- "id": 21
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "src": "https://cdn.jsdelivr.net/npm/rrweb@latest/dist/rrweb.min.js"
- },
- "childNodes": [],
- "id": 22
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 23
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "src": "http://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js",
- "integrity": "sha256-yr4fRk/GU1ehYJPAs8P4JlTgu0Hdsp4ZKrx8bDEDC3I=",
- "crossorigin": "anonymous"
- },
- "childNodes": [],
- "id": 24
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 25
- }
- ],
- "id": 4
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 26
- },
- {
- "type": 2,
- "tagName": "body",
- "attributes": {
- "class": "nopad"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 28
- },
- {
- "type": 2,
- "tagName": "h1",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "The SSCCE",
- "id": 30
- }
- ],
- "id": 29
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 31
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short, Self Contained, Correct (Compilable), Example",
- "id": 33
- }
- ],
- "id": 32
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 34
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If you are having a problem with some code and seeking help,\npreparing a Short, Self Contained, Correct Example (",
- "id": 36
- },
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Short, self contained, correct example"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "SSCCE",
- "id": 38
- }
- ],
- "id": 37
- },
- {
- "type": 3,
- "textContent": ") is very\nuseful. But what is an SSCCE?",
- "id": 39
- }
- ],
- "id": 35
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 41
- }
- ],
- "id": 40
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It is all in the name, really. Take a look at each part. The\nversion prepared for others to see should be:",
- "id": 43
- }
- ],
- "id": 42
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 44
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 46
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short",
- "id": 49
- }
- ],
- "id": 48
- },
- {
- "type": 3,
- "textContent": " (Small) - Minimise bandwidth for the example,\ndo not bore the audience.",
- "id": 50
- }
- ],
- "id": 47
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 51
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Self Contained",
- "id": 54
- }
- ],
- "id": 53
- },
- {
- "type": 3,
- "textContent": " - Ensure everything is included,\nready to go.",
- "id": 55
- }
- ],
- "id": 52
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 56
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Correct",
- "id": 59
- }
- ],
- "id": 58
- },
- {
- "type": 3,
- "textContent": " - Copy, paste, (compile,) see is the aim.",
- "id": 60
- }
- ],
- "id": 57
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 61
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example",
- "id": 64
- }
- ],
- "id": 63
- },
- {
- "type": 3,
- "textContent": " - Displays the problem we are trying to solve.",
- "id": 65
- }
- ],
- "id": 62
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 66
- }
- ],
- "id": 45
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 67
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "short",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short",
- "id": 70
- }
- ],
- "id": 69
- }
- ],
- "id": 68
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 71
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "This depends on the group or forum. For a public forum,\nmost readers will stop reading by 100 lines of code,\nand start complaining at 250-300 lines of code.",
- "id": 73
- }
- ],
- "id": 72
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 74
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "trim",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Tricks for Trimming",
- "id": 77
- }
- ],
- "id": 76
- }
- ],
- "id": 75
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 78
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the GUI has 40 buttons not related\nto the problem, remove them. If they ",
- "id": 80
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "are",
- "id": 82
- }
- ],
- "id": 81
- },
- {
- "type": 3,
- "textContent": "\nrelated to the problem (you remove them and the\nproblem disappears) put one or two back in,\nif the problem reappears, include ",
- "id": 83
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "only",
- "id": 85
- }
- ],
- "id": 84
- },
- {
- "type": 3,
- "textContent": "\nthose one or two buttons.",
- "id": 86
- }
- ],
- "id": 79
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 87
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "The array or table that is causing a problem\nmay have a hundred entries, but again, if the\nproblem can be seen with two or three entries,\ntrim the example to that alone.",
- "id": 89
- }
- ],
- "id": 88
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 90
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the problem is a GUI layout problem,\ntrim all the processes (JavaScript/Java methods\netc.) from behind it. On the other hand, if\nthe app. has a GUI but the problem ",
- "id": 92
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "is",
- "id": 94
- }
- ],
- "id": 93
- },
- {
- "type": 3,
- "textContent": "\nthe processing, trim the GUI to a minimal\nversion.",
- "id": 95
- }
- ],
- "id": 91
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 96
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If trimming a very large amount\nif code for others to see, you might trim out\na part of it early on that you think is not\nrelated to the problem, yet the problem is fixed. ",
- "id": 98
- }
- ],
- "id": 97
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 99
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "solution",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Problem Solved?",
- "id": 102
- }
- ],
- "id": 101
- }
- ],
- "id": 100
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 103
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "By identifying more clearly where the problem\noccurs, you have just made an important step toward\nsolving it. The process that highlights\nwhere a problem ",
- "id": 105
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "originates",
- "id": 107
- }
- ],
- "id": 106
- },
- {
- "type": 3,
- "textContent": " can, in itself,\nhelp to solve it. You might look more closely\nat the part cut out, and in doing so, spot the\nproblem.",
- "id": 108
- }
- ],
- "id": 104
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 109
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Even if you cannot see why the\nproblem occurs, you have still made an\nimportant step: identifying (at least part)\nof the code involved. ",
- "id": 111
- }
- ],
- "id": 110
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 112
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the code being trimmed is now a concise\nexample of the problem, it is ready to present\nto others, if not, put the problem code back\nin and continue trimming other areas of the\ncode until it is.",
- "id": 114
- }
- ],
- "id": 113
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 116
- }
- ],
- "id": 115
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "selfcon",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Self Contained",
- "id": 119
- }
- ],
- "id": 118
- }
- ],
- "id": 117
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 120
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It is important to ensure that the code\ngiven to others can be 'copied, pasted, compiled,\nrun' so that they can help quickly and\nwith a minimum of fuss.\n",
- "id": 122
- }
- ],
- "id": 121
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "This means that after the code has been\ncopied, pasted and compiled by those helping,\nthey can run it and ",
- "id": 124
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "see",
- "id": 126
- }
- ],
- "id": 125
- },
- {
- "type": 3,
- "textContent": " the results\nfor themselves. It is the ",
- "id": 127
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "example",
- "id": 129
- }
- ],
- "id": 128
- },
- {
- "type": 3,
- "textContent": " of\nthe problem.",
- "id": 130
- }
- ],
- "id": 123
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 131
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "You are much more likely to receive help if you do this.",
- "id": 133
- }
- ],
- "id": 132
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 134
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "selfcontained",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "How to make an example self contained.",
- "id": 137
- }
- ],
- "id": 136
- }
- ],
- "id": 135
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 138
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the code performs I/O to files,\nreplace the file I/O with dummy data structures in\nproblems that are unrelated to input/output.\n",
- "id": 140
- }
- ],
- "id": 139
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 141
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the problem ",
- "id": 143
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "is",
- "id": 145
- }
- ],
- "id": 144
- },
- {
- "type": 3,
- "textContent": " the input and textual input can be used, prepare\na short example that can be copied for the actual file data.\n",
- "id": 146
- }
- ],
- "id": 142
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 147
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nShould the problem happen\nonly under load, insert code to simulate\nthat load. If a layout problem only occurs\nunder particular circumstances,\n",
- "id": 149
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "force",
- "id": 151
- }
- ],
- "id": 150
- },
- {
- "type": 3,
- "textContent": " those things to happen, if\nit is practical to do so.\n",
- "id": 152
- }
- ],
- "id": 148
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 153
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nObviously there are things that cannot\nbe included in an example that is posted\nto a forum, 'a database' etcetera,\nbut many times you just need a bit of\nlateral thinking to come up with a way to\nreplace something you thought was 'vital'\nto demonstrate a problem.\n",
- "id": 155
- }
- ],
- "id": 154
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 156
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "One example of lateral thinking is 'images'.\nImages related to code problems might seem difficult\nto replace. But one trick is to link to an image\navailable on the web, one that displays the same problem.\nTry to make\nany web based images 'small' in bytes - if at all possible.\n",
- "id": 158
- }
- ],
- "id": 157
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 159
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "co",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Correct",
- "id": 162
- }
- ],
- "id": 161
- }
- ],
- "id": 160
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 163
- },
- {
- "type": 2,
- "tagName": "blockquote",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If my example was correct, ",
- "id": 165
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "what would I be doing here?",
- "id": 167
- }
- ],
- "id": 166
- }
- ],
- "id": 164
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 168
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "(Laughs) No, that is not what 'correct' means in this context.\nIn this document, correct (or compilable, which particularly\nrelates to computer source code) means ensuring that\nthe example fits the accepted standards and protocols.\n",
- "id": 170
- }
- ],
- "id": 169
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nTo achieve that, it is necessary to:\n",
- "id": 172
- }
- ],
- "id": 171
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 173
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "linewidth",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Line width",
- "id": 177
- }
- ],
- "id": 176
- },
- {
- "type": 3,
- "textContent": "\nKeep the width of the lines in the\nexample to under 62 characters wide.\n(but please do ",
- "id": 178
- },
- {
- "type": 2,
- "tagName": "b",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "not",
- "id": 180
- }
- ],
- "id": 179
- },
- {
- "type": 3,
- "textContent": " remove all line indents!)\nNewsreaders typically force a line wrap at\naround 72 characters (and it pays to 'play it safe\nby using less than that).\n",
- "id": 181
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Sometimes",
- "id": 183
- }
- ],
- "id": 182
- },
- {
- "type": 3,
- "textContent": " line wrap does not\ncause any problem with the example, but\nit ",
- "id": 184
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "usually",
- "id": 186
- }
- ],
- "id": 185
- },
- {
- "type": 3,
- "textContent": " does, and means the\nlines need to be rejoined or reconstructed,\nbefore they work as intended.\n",
- "id": 187
- },
- {
- "type": 2,
- "tagName": "br",
- "attributes": {},
- "childNodes": [],
- "id": 188
- },
- {
- "type": 3,
- "textContent": "Most code/source editors will show a column width along the top of the editing area.\n",
- "id": 189
- }
- ],
- "id": 175
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 190
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "nameconvention",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Use the naming convention",
- "id": 193
- }
- ],
- "id": 192
- },
- {
- "type": 3,
- "textContent": ", if one exists.\nMost of the people willing to help will be\nusing hints from the formatting of upper\nand lower case letters, as well as their\ndescriptive names, to skim the code in\nthe hope of spotting the problem quickly.\nIf following the conventions the audience is\nused to, it helps them to do that.\n",
- "id": 194
- }
- ],
- "id": 191
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 195
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "valid",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Ensure the example is ",
- "id": 198
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "correct",
- "id": 200
- }
- ],
- "id": 199
- },
- {
- "type": 3,
- "textContent": ". ",
- "id": 201
- }
- ],
- "id": 197
- },
- {
- "type": 3,
- "textContent": "\nEither the example compiles cleanly, or causes the exact error message about which\nneeds solving.\n",
- "id": 202
- }
- ],
- "id": 196
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 203
- }
- ],
- "id": 174
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 204
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Further tips:\n",
- "id": 206
- }
- ],
- "id": 205
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 207
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 209
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Move all resources (CSS/JS/Java source, images etc.) to the same\ndirectory, so they are easier to administer, and easier to find.\n",
- "id": 211
- }
- ],
- "id": 210
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Remove package statements from Java code.\n",
- "id": 213
- }
- ],
- "id": 212
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Demote public Java classes to default. If the language\nspecifies only a single public class per source code\nfile, demote all the other classes to default. This\nallows the example to be compiled without being split\ninto separate files.\n",
- "id": 215
- }
- ],
- "id": 214
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 216
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Validate the example, where a validator is available.\n",
- "id": 218
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 220
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "HyperText MarkUp Language"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "HTML",
- "id": 223
- }
- ],
- "id": 222
- },
- {
- "type": 3,
- "textContent": " ",
- "id": 224
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://validator.w3.org/",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "validator",
- "id": 226
- }
- ],
- "id": 225
- }
- ],
- "id": 221
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 227
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Cascading Style Sheets"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "CSS",
- "id": 230
- }
- ],
- "id": 229
- },
- {
- "type": 3,
- "textContent": " ",
- "id": 231
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://jigsaw.w3.org/css-validator/",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "validator",
- "id": 233
- }
- ],
- "id": 232
- }
- ],
- "id": 228
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 234
- }
- ],
- "id": 219
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 235
- }
- ],
- "id": 217
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 236
- }
- ],
- "id": 208
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 237
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "eg",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example",
- "id": 240
- }
- ],
- "id": 239
- }
- ],
- "id": 238
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 241
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Make sure the posted code, displays the problem!",
- "id": 244
- }
- ],
- "id": 243
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 245
- }
- ],
- "id": 242
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nYou have worked on the example for hours, perhaps\ndays. It feels like forever. Now is a good time to\ntake a breather, step back, stretch, perhaps go for a\nrefreshing walk.\n",
- "id": 247
- }
- ],
- "id": 246
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 249
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Refresh the computer as well.",
- "id": 251
- }
- ],
- "id": 250
- },
- {
- "type": 3,
- "textContent": " Reboot it\nif necessary.\n",
- "id": 252
- }
- ],
- "id": 248
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nNow open the pages, or program, where the problem\noccurs. Is it still there?\n",
- "id": 254
- }
- ],
- "id": 253
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nPerhaps 99% of the time it is (maybe less if\nusing a less reliable operating system).\n",
- "id": 256
- }
- ],
- "id": 255
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nNow, if the problem is still there, post the example.\n",
- "id": 258
- }
- ],
- "id": 257
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 259
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "extra",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example - Extra Points",
- "id": 262
- }
- ],
- "id": 261
- }
- ],
- "id": 260
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 263
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "We wish we had a dollar for every person who asked\nfor help about a web page or the stylesheet for one,\nsome JavaScript code, or a Java Applet - and did not\nprovide a link. We would not need to supply and maintain this document,\ninstead we would be sunning ourselves on a beach in an exotic\nlocation, drinking still more exotic cocktails.",
- "id": 265
- }
- ],
- "id": 264
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 266
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Why do people miss such an opportunity? Very\nfew things are as tempting as a link to the problem.\nTo a seasoned forum helper, it is almost as\ntempting as a small bottle with the vague\nmessage 'drink me', ..or an exotic cocktail.",
- "id": 268
- }
- ],
- "id": 267
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 269
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Having a group of people look at the problem\nhelps to identify and solve the problem at hand,\nas well as ",
- "id": 271
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "compatibility problems",
- "id": 273
- }
- ],
- "id": 272
- },
- {
- "type": 3,
- "textContent": " (which\nmight be the cause of the problem all along).",
- "id": 274
- }
- ],
- "id": 270
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 275
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "standards",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Standards on the Internet",
- "id": 278
- }
- ],
- "id": 277
- }
- ],
- "id": 276
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 279
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nTherein lies another 'gotcha' when dealing with\nmost things related to the internet.\nThe internet, as well as most things\nassociated with it, is just a little bit wild.\nFor every standard there are two alternates.\nFor every rule there are at least three exceptions\nto the rule.\n",
- "id": 281
- }
- ],
- "id": 280
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 282
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "To start with, browsers do not work the same.\nWe are not just referring to differences between\nIE and Netscape, or old and new browsers, but 'Internet\nExplorer 5' for the Macintosh, for example, is a\n(significantly) different browser from 'Internet\nExplorer 5' for Windows.",
- "id": 284
- }
- ],
- "id": 283
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 285
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "People asking for help on web-design groups are often\nsurprised to hear that the problem they are\nexperiencing with a web page does not even\nshow for others using different browsers.",
- "id": 287
- }
- ],
- "id": 286
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 288
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "devapplet",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Java Applets",
- "id": 291
- }
- ],
- "id": 290
- }
- ],
- "id": 289
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 292
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nAnother level of complexity, and more chance\nof problems, is introduced when Applets are\nin the web page. How the random clutch of browsers mentioned\nabove will react to (often poorly formed) html and styles,\nwith Applets thrown into the mix as well, is another\nmatter again. Here is just one example.\n",
- "id": 294
- }
- ],
- "id": 293
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 295
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nFor a long time MicroSoft was shipping the\nInternet Explorer browser with an ",
- "id": 297
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "older version of Java",
- "id": 299
- }
- ],
- "id": 298
- },
- {
- "type": 3,
- "textContent": "\n(a version 1.1\n",
- "id": 300
- },
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Java Virtual Machine, the emulator in which Java Applets run."
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nJVM",
- "id": 302
- }
- ],
- "id": 301
- },
- {
- "type": 3,
- "textContent": ").\nAfter some events happened, MS put\nthe ",
- "id": 303
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "latest Java",
- "id": 305
- }
- ],
- "id": 304
- },
- {
- "type": 3,
- "textContent": " engines into its browsers. Soon\nafter that, they began to supply the IE with ",
- "id": 306
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "no JVM\nat all",
- "id": 308
- }
- ],
- "id": 307
- },
- {
- "type": 3,
- "textContent": ".\n",
- "id": 309
- }
- ],
- "id": 296
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 310
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nGiven the possible complications with Applets,\nit is fortunate that they are so easy to check\nwhen on they are on the internet. A few clicks\nand someone on the other side of the planet\ncan be reading the output from the Java console\nof ",
- "id": 312
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "their own browser",
- "id": 314
- }
- ],
- "id": 313
- },
- {
- "type": 3,
- "textContent": " or, sometimes, see the Applet\nworking perfectly.\n",
- "id": 315
- }
- ],
- "id": 311
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 316
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf the Applet that fails for you works in someone else's browser,\nit helps to quickly narrow the scope of the problem to the html,\nthe applet tag, or the JVM installed in the browser\n(or complete lack of one).\n",
- "id": 318
- }
- ],
- "id": 317
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 319
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "bother",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Why bother?",
- "id": 322
- }
- ],
- "id": 321
- }
- ],
- "id": 320
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 323
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "A very good question. Why go to all this effort?\n",
- "id": 325
- }
- ],
- "id": 324
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 326
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nPerhaps someone can understand the problem\nyou describe from the description you give.\nMaybe it is one of those things that a\nthousand people before have stumbled on.\n",
- "id": 328
- }
- ],
- "id": 327
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 329
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf you have already checked the FAQ,\nGoogled the forum, read the ..flaming\nmanual it is unlikely that an answer\nwill pop up that easily. You ",
- "id": 331
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "have",
- "id": 333
- }
- ],
- "id": 332
- },
- {
- "type": 3,
- "textContent": "\ndone those things, haven't you?\n",
- "id": 334
- }
- ],
- "id": 330
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 335
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf wasting the time and bandwidth of\nthe other members of a public forum, you\nrisk members of the group delivering\nshort sharp rebukes.\n",
- "id": 337
- }
- ],
- "id": 336
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 338
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nThe people who contribute to the groups\ngive a wide range of advice. Sometimes\nthe advice works, sometimes it does not,\nbut either way, the advice is free.\n",
- "id": 340
- }
- ],
- "id": 339
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 341
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nContributors do so for a variety of reasons,\nincluding the nice feeling they get when\nthey can pass on a piece of knowledge relating\nto their chosen field to someone who is learning.\n",
- "id": 343
- }
- ],
- "id": 342
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 344
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nUnfortunately, if someone asks to be\nspoon fed information that is contained\nin a basic tutorial, it is a strong indication\nthat the questioner does not so much want\nto learn as get others to do work they should\nbe doing themselves.\n",
- "id": 346
- }
- ],
- "id": 345
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 347
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf there is a piece of code\nand you wish to have it written, finished\nor fixed by others, there are plenty of\navenues to achieve that. For a modest amount of\nmoney, you can get most IT work completed (or done)\nthrough a number of internet based outsourcing\ncompanies.\nThat is what such companies specialize in.",
- "id": 349
- }
- ],
- "id": 348
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 350
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Free forums are for\npeople to learn.",
- "id": 352
- }
- ],
- "id": 351
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 353
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Having said that:\n",
- "id": 355
- }
- ],
- "id": 354
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 356
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nLet us assume you are indeed genuine\nin your learning, you have a huge, complex system\nwith an occasional, unpredictable bug, and you\n",
- "id": 358
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "have",
- "id": 360
- }
- ],
- "id": 359
- },
- {
- "type": 3,
- "textContent": " searched the FAQ & Group,\nstudied the manual or documentation and not\nproduced an answer.\n",
- "id": 361
- }
- ],
- "id": 357
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 362
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nFeel free to describe the problem to the\ngroup; perhaps it is a basic\nmisunderstanding on your part\nthat can easily be cleared up.\n",
- "id": 364
- }
- ],
- "id": 363
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 365
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "b",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "compulsory",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "We",
- "id": 369
- }
- ],
- "id": 368
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "every",
- "rel": "nofollow"
- },
- "childNodes": [],
- "id": 370
- },
- {
- "type": 3,
- "textContent": " are not proposing that every single\nproblem needs a SSCCE in order to be\nsolved. We are also not suggesting an\nexample is, or should be, compulsory.",
- "id": 371
- }
- ],
- "id": 367
- }
- ],
- "id": 366
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 372
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It will, however, make people\nmuch ",
- "id": 374
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "more likely to help",
- "id": 376
- }
- ],
- "id": 375
- },
- {
- "type": 3,
- "textContent": ", and will\ntherefore ",
- "id": 377
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "increase the chance of\nfinding a solution",
- "id": 379
- }
- ],
- "id": 378
- },
- {
- "type": 3,
- "textContent": ".",
- "id": 380
- }
- ],
- "id": 373
- },
- {
- "type": 3,
- "textContent": "\n\n\n",
- "id": 381
- },
- {
- "type": 2,
- "tagName": "div",
- "attributes": {
- "class": "centerFooter"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nWeb hosting compliments of\n",
- "id": 383
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://evolutionhosting.com/pub/evolution.jsp"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Evolution Hosting",
- "id": 385
- }
- ],
- "id": 384
- },
- {
- "type": 3,
- "textContent": " and ",
- "id": 386
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "https://coderanch.com/"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "CodeRanch",
- "id": 388
- }
- ],
- "id": 387
- },
- {
- "type": 3,
- "textContent": ".",
- "id": 389
- },
- {
- "type": 2,
- "tagName": "br",
- "attributes": {},
- "childNodes": [],
- "id": 390
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 391
- }
- ],
- "id": 382
- },
- {
- "type": 3,
- "textContent": "\n\n\n\n\n",
- "id": 392
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "type": "text/javascript",
- "charset": "utf-8"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "SCRIPT_PLACEHOLDER",
- "id": 394
- }
- ],
- "id": 393
- },
- {
- "type": 3,
- "textContent": "\n\n\n\n\n\n",
- "id": 395
- }
- ],
- "id": 27
- }
- ],
- "id": 3
- }
- ],
- "id": 1
- },
- "initialOffset": {
- "left": 0,
- "top": 0
- }
- },
- "timestamp": 1568367155701
- },
- {
- "type": 4,
- "data": {
- "href": "http://localhost:5000/",
- "width": 1422,
- "height": 741
- },
- "timestamp": 1568367268696
- },
- {
- "type": 2,
- "data": {
- "node": {
- "type": 0,
- "childNodes": [
- {
- "type": 1,
- "name": "",
- "publicId": "",
- "systemId": "",
- "id": 2
- },
- {
- "type": 2,
- "tagName": "html",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "head",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 5
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "http-equiv": "content-type",
- "content": "text/html; charset=utf-8"
- },
- "childNodes": [],
- "id": 6
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 7
- },
- {
- "type": 2,
- "tagName": "title",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short, Self Contained, Correct Example",
- "id": 9
- }
- ],
- "id": 8
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 10
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "author",
- "content": "Andrew Thompson edited by Ryan Stewart & Lewis Bloch"
- },
- "childNodes": [],
- "id": 11
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 12
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "description",
- "content": "Describes the short, self contained,\ncorrect example. A useful technique for debugging."
- },
- "childNodes": [],
- "id": 13
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 14
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "last-updated",
- "content": "2014-02-19"
- },
- "childNodes": [],
- "id": 15
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 16
- },
- {
- "type": 2,
- "tagName": "meta",
- "attributes": {
- "name": "keywords",
- "content": "bug, debug, problem, fix, help, example, source,\ncode, java, javascript, html, css, styles, layout"
- },
- "childNodes": [],
- "id": 17
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 18
- },
- {
- "type": 2,
- "tagName": "style",
- "attributes": {
- "type": "text/css"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n.centerFooter {\n\ttext-align: center;\n\tfont-size: 90%;\n}\nbody {\n\tfont-size: 100%;\n\tfont-family: helvetica, arial, sans-serif;\n\tbackground-color: rgb(250,247,241);\n}\n",
- "isStyle": true,
- "id": 20
- }
- ],
- "id": 19
- },
- {
- "type": 3,
- "textContent": "\n\n\n",
- "id": 21
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "src": "https://cdn.jsdelivr.net/npm/rrweb@latest/dist/rrweb.min.js"
- },
- "childNodes": [],
- "id": 22
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 23
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "src": "http://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js",
- "integrity": "sha256-yr4fRk/GU1ehYJPAs8P4JlTgu0Hdsp4ZKrx8bDEDC3I=",
- "crossorigin": "anonymous"
- },
- "childNodes": [],
- "id": 24
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 25
- }
- ],
- "id": 4
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 26
- },
- {
- "type": 2,
- "tagName": "body",
- "attributes": {
- "class": "nopad"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 28
- },
- {
- "type": 2,
- "tagName": "h1",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "The SSCCE",
- "id": 30
- }
- ],
- "id": 29
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 31
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short, Self Contained, Correct (Compilable), Example",
- "id": 33
- }
- ],
- "id": 32
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 34
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If you are having a problem with some code and seeking help,\npreparing a Short, Self Contained, Correct Example (",
- "id": 36
- },
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Short, self contained, correct example"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "SSCCE",
- "id": 38
- }
- ],
- "id": 37
- },
- {
- "type": 3,
- "textContent": ") is very\nuseful. But what is an SSCCE?",
- "id": 39
- }
- ],
- "id": 35
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 41
- }
- ],
- "id": 40
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It is all in the name, really. Take a look at each part. The\nversion prepared for others to see should be:",
- "id": 43
- }
- ],
- "id": 42
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 44
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 46
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short",
- "id": 49
- }
- ],
- "id": 48
- },
- {
- "type": 3,
- "textContent": " (Small) - Minimise bandwidth for the example,\ndo not bore the audience.",
- "id": 50
- }
- ],
- "id": 47
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 51
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Self Contained",
- "id": 54
- }
- ],
- "id": 53
- },
- {
- "type": 3,
- "textContent": " - Ensure everything is included,\nready to go.",
- "id": 55
- }
- ],
- "id": 52
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 56
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Correct",
- "id": 59
- }
- ],
- "id": 58
- },
- {
- "type": 3,
- "textContent": " - Copy, paste, (compile,) see is the aim.",
- "id": 60
- }
- ],
- "id": 57
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 61
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example",
- "id": 64
- }
- ],
- "id": 63
- },
- {
- "type": 3,
- "textContent": " - Displays the problem we are trying to solve.",
- "id": 65
- }
- ],
- "id": 62
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 66
- }
- ],
- "id": 45
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 67
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "short",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Short",
- "id": 70
- }
- ],
- "id": 69
- }
- ],
- "id": 68
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 71
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "This depends on the group or forum. For a public forum,\nmost readers will stop reading by 100 lines of code,\nand start complaining at 250-300 lines of code.",
- "id": 73
- }
- ],
- "id": 72
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 74
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "trim",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Tricks for Trimming",
- "id": 77
- }
- ],
- "id": 76
- }
- ],
- "id": 75
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 78
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the GUI has 40 buttons not related\nto the problem, remove them. If they ",
- "id": 80
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "are",
- "id": 82
- }
- ],
- "id": 81
- },
- {
- "type": 3,
- "textContent": "\nrelated to the problem (you remove them and the\nproblem disappears) put one or two back in,\nif the problem reappears, include ",
- "id": 83
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "only",
- "id": 85
- }
- ],
- "id": 84
- },
- {
- "type": 3,
- "textContent": "\nthose one or two buttons.",
- "id": 86
- }
- ],
- "id": 79
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 87
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "The array or table that is causing a problem\nmay have a hundred entries, but again, if the\nproblem can be seen with two or three entries,\ntrim the example to that alone.",
- "id": 89
- }
- ],
- "id": 88
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 90
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the problem is a GUI layout problem,\ntrim all the processes (JavaScript/Java methods\netc.) from behind it. On the other hand, if\nthe app. has a GUI but the problem ",
- "id": 92
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "is",
- "id": 94
- }
- ],
- "id": 93
- },
- {
- "type": 3,
- "textContent": "\nthe processing, trim the GUI to a minimal\nversion.",
- "id": 95
- }
- ],
- "id": 91
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 96
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If trimming a very large amount\nif code for others to see, you might trim out\na part of it early on that you think is not\nrelated to the problem, yet the problem is fixed. ",
- "id": 98
- }
- ],
- "id": 97
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 99
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "solution",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Problem Solved?",
- "id": 102
- }
- ],
- "id": 101
- }
- ],
- "id": 100
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 103
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "By identifying more clearly where the problem\noccurs, you have just made an important step toward\nsolving it. The process that highlights\nwhere a problem ",
- "id": 105
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "originates",
- "id": 107
- }
- ],
- "id": 106
- },
- {
- "type": 3,
- "textContent": " can, in itself,\nhelp to solve it. You might look more closely\nat the part cut out, and in doing so, spot the\nproblem.",
- "id": 108
- }
- ],
- "id": 104
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 109
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Even if you cannot see why the\nproblem occurs, you have still made an\nimportant step: identifying (at least part)\nof the code involved. ",
- "id": 111
- }
- ],
- "id": 110
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 112
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the code being trimmed is now a concise\nexample of the problem, it is ready to present\nto others, if not, put the problem code back\nin and continue trimming other areas of the\ncode until it is.",
- "id": 114
- }
- ],
- "id": 113
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 116
- }
- ],
- "id": 115
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "selfcon",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Self Contained",
- "id": 119
- }
- ],
- "id": 118
- }
- ],
- "id": 117
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 120
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It is important to ensure that the code\ngiven to others can be 'copied, pasted, compiled,\nrun' so that they can help quickly and\nwith a minimum of fuss.\n",
- "id": 122
- }
- ],
- "id": 121
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "This means that after the code has been\ncopied, pasted and compiled by those helping,\nthey can run it and ",
- "id": 124
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "see",
- "id": 126
- }
- ],
- "id": 125
- },
- {
- "type": 3,
- "textContent": " the results\nfor themselves. It is the ",
- "id": 127
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "example",
- "id": 129
- }
- ],
- "id": 128
- },
- {
- "type": 3,
- "textContent": " of\nthe problem.",
- "id": 130
- }
- ],
- "id": 123
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 131
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "You are much more likely to receive help if you do this.",
- "id": 133
- }
- ],
- "id": 132
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 134
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "selfcontained",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "How to make an example self contained.",
- "id": 137
- }
- ],
- "id": 136
- }
- ],
- "id": 135
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 138
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the code performs I/O to files,\nreplace the file I/O with dummy data structures in\nproblems that are unrelated to input/output.\n",
- "id": 140
- }
- ],
- "id": 139
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 141
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If the problem ",
- "id": 143
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "is",
- "id": 145
- }
- ],
- "id": 144
- },
- {
- "type": 3,
- "textContent": " the input and textual input can be used, prepare\na short example that can be copied for the actual file data.\n",
- "id": 146
- }
- ],
- "id": 142
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 147
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nShould the problem happen\nonly under load, insert code to simulate\nthat load. If a layout problem only occurs\nunder particular circumstances,\n",
- "id": 149
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "force",
- "id": 151
- }
- ],
- "id": 150
- },
- {
- "type": 3,
- "textContent": " those things to happen, if\nit is practical to do so.\n",
- "id": 152
- }
- ],
- "id": 148
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 153
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nObviously there are things that cannot\nbe included in an example that is posted\nto a forum, 'a database' etcetera,\nbut many times you just need a bit of\nlateral thinking to come up with a way to\nreplace something you thought was 'vital'\nto demonstrate a problem.\n",
- "id": 155
- }
- ],
- "id": 154
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 156
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "One example of lateral thinking is 'images'.\nImages related to code problems might seem difficult\nto replace. But one trick is to link to an image\navailable on the web, one that displays the same problem.\nTry to make\nany web based images 'small' in bytes - if at all possible.\n",
- "id": 158
- }
- ],
- "id": 157
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 159
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "co",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Correct",
- "id": 162
- }
- ],
- "id": 161
- }
- ],
- "id": 160
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 163
- },
- {
- "type": 2,
- "tagName": "blockquote",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "If my example was correct, ",
- "id": 165
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "what would I be doing here?",
- "id": 167
- }
- ],
- "id": 166
- }
- ],
- "id": 164
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 168
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "(Laughs) No, that is not what 'correct' means in this context.\nIn this document, correct (or compilable, which particularly\nrelates to computer source code) means ensuring that\nthe example fits the accepted standards and protocols.\n",
- "id": 170
- }
- ],
- "id": 169
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nTo achieve that, it is necessary to:\n",
- "id": 172
- }
- ],
- "id": 171
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 173
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "linewidth",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Line width",
- "id": 177
- }
- ],
- "id": 176
- },
- {
- "type": 3,
- "textContent": "\nKeep the width of the lines in the\nexample to under 62 characters wide.\n(but please do ",
- "id": 178
- },
- {
- "type": 2,
- "tagName": "b",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "not",
- "id": 180
- }
- ],
- "id": 179
- },
- {
- "type": 3,
- "textContent": " remove all line indents!)\nNewsreaders typically force a line wrap at\naround 72 characters (and it pays to 'play it safe\nby using less than that).\n",
- "id": 181
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Sometimes",
- "id": 183
- }
- ],
- "id": 182
- },
- {
- "type": 3,
- "textContent": " line wrap does not\ncause any problem with the example, but\nit ",
- "id": 184
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "usually",
- "id": 186
- }
- ],
- "id": 185
- },
- {
- "type": 3,
- "textContent": " does, and means the\nlines need to be rejoined or reconstructed,\nbefore they work as intended.\n",
- "id": 187
- },
- {
- "type": 2,
- "tagName": "br",
- "attributes": {},
- "childNodes": [],
- "id": 188
- },
- {
- "type": 3,
- "textContent": "Most code/source editors will show a column width along the top of the editing area.\n",
- "id": 189
- }
- ],
- "id": 175
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 190
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "nameconvention",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Use the naming convention",
- "id": 193
- }
- ],
- "id": 192
- },
- {
- "type": 3,
- "textContent": ", if one exists.\nMost of the people willing to help will be\nusing hints from the formatting of upper\nand lower case letters, as well as their\ndescriptive names, to skim the code in\nthe hope of spotting the problem quickly.\nIf following the conventions the audience is\nused to, it helps them to do that.\n",
- "id": 194
- }
- ],
- "id": 191
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 195
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "valid",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Ensure the example is ",
- "id": 198
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "correct",
- "id": 200
- }
- ],
- "id": 199
- },
- {
- "type": 3,
- "textContent": ". ",
- "id": 201
- }
- ],
- "id": 197
- },
- {
- "type": 3,
- "textContent": "\nEither the example compiles cleanly, or causes the exact error message about which\nneeds solving.\n",
- "id": 202
- }
- ],
- "id": 196
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 203
- }
- ],
- "id": 174
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 204
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Further tips:\n",
- "id": 206
- }
- ],
- "id": 205
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 207
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 209
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Move all resources (CSS/JS/Java source, images etc.) to the same\ndirectory, so they are easier to administer, and easier to find.\n",
- "id": 211
- }
- ],
- "id": 210
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Remove package statements from Java code.\n",
- "id": 213
- }
- ],
- "id": 212
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Demote public Java classes to default. If the language\nspecifies only a single public class per source code\nfile, demote all the other classes to default. This\nallows the example to be compiled without being split\ninto separate files.\n",
- "id": 215
- }
- ],
- "id": 214
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 216
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Validate the example, where a validator is available.\n",
- "id": 218
- },
- {
- "type": 2,
- "tagName": "ul",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 220
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "HyperText MarkUp Language"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "HTML",
- "id": 223
- }
- ],
- "id": 222
- },
- {
- "type": 3,
- "textContent": " ",
- "id": 224
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://validator.w3.org/",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "validator",
- "id": 226
- }
- ],
- "id": 225
- }
- ],
- "id": 221
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 227
- },
- {
- "type": 2,
- "tagName": "li",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Cascading Style Sheets"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "CSS",
- "id": 230
- }
- ],
- "id": 229
- },
- {
- "type": 3,
- "textContent": " ",
- "id": 231
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://jigsaw.w3.org/css-validator/",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "validator",
- "id": 233
- }
- ],
- "id": 232
- }
- ],
- "id": 228
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 234
- }
- ],
- "id": 219
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 235
- }
- ],
- "id": 217
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 236
- }
- ],
- "id": 208
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 237
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "eg",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example",
- "id": 240
- }
- ],
- "id": 239
- }
- ],
- "id": 238
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 241
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Make sure the posted code, displays the problem!",
- "id": 244
- }
- ],
- "id": 243
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 245
- }
- ],
- "id": 242
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nYou have worked on the example for hours, perhaps\ndays. It feels like forever. Now is a good time to\ntake a breather, step back, stretch, perhaps go for a\nrefreshing walk.\n",
- "id": 247
- }
- ],
- "id": 246
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\n",
- "id": 249
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Refresh the computer as well.",
- "id": 251
- }
- ],
- "id": 250
- },
- {
- "type": 3,
- "textContent": " Reboot it\nif necessary.\n",
- "id": 252
- }
- ],
- "id": 248
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nNow open the pages, or program, where the problem\noccurs. Is it still there?\n",
- "id": 254
- }
- ],
- "id": 253
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nPerhaps 99% of the time it is (maybe less if\nusing a less reliable operating system).\n",
- "id": 256
- }
- ],
- "id": 255
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nNow, if the problem is still there, post the example.\n",
- "id": 258
- }
- ],
- "id": 257
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 259
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "extra",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Example - Extra Points",
- "id": 262
- }
- ],
- "id": 261
- }
- ],
- "id": 260
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 263
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "We wish we had a dollar for every person who asked\nfor help about a web page or the stylesheet for one,\nsome JavaScript code, or a Java Applet - and did not\nprovide a link. We would not need to supply and maintain this document,\ninstead we would be sunning ourselves on a beach in an exotic\nlocation, drinking still more exotic cocktails.",
- "id": 265
- }
- ],
- "id": 264
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 266
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Why do people miss such an opportunity? Very\nfew things are as tempting as a link to the problem.\nTo a seasoned forum helper, it is almost as\ntempting as a small bottle with the vague\nmessage 'drink me', ..or an exotic cocktail.",
- "id": 268
- }
- ],
- "id": 267
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 269
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Having a group of people look at the problem\nhelps to identify and solve the problem at hand,\nas well as ",
- "id": 271
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "compatibility problems",
- "id": 273
- }
- ],
- "id": 272
- },
- {
- "type": 3,
- "textContent": " (which\nmight be the cause of the problem all along).",
- "id": 274
- }
- ],
- "id": 270
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 275
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "standards",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Standards on the Internet",
- "id": 278
- }
- ],
- "id": 277
- }
- ],
- "id": 276
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 279
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nTherein lies another 'gotcha' when dealing with\nmost things related to the internet.\nThe internet, as well as most things\nassociated with it, is just a little bit wild.\nFor every standard there are two alternates.\nFor every rule there are at least three exceptions\nto the rule.\n",
- "id": 281
- }
- ],
- "id": 280
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 282
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "To start with, browsers do not work the same.\nWe are not just referring to differences between\nIE and Netscape, or old and new browsers, but 'Internet\nExplorer 5' for the Macintosh, for example, is a\n(significantly) different browser from 'Internet\nExplorer 5' for Windows.",
- "id": 284
- }
- ],
- "id": 283
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 285
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "People asking for help on web-design groups are often\nsurprised to hear that the problem they are\nexperiencing with a web page does not even\nshow for others using different browsers.",
- "id": 287
- }
- ],
- "id": 286
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 288
- },
- {
- "type": 2,
- "tagName": "h3",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "devapplet",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Java Applets",
- "id": 291
- }
- ],
- "id": 290
- }
- ],
- "id": 289
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 292
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nAnother level of complexity, and more chance\nof problems, is introduced when Applets are\nin the web page. How the random clutch of browsers mentioned\nabove will react to (often poorly formed) html and styles,\nwith Applets thrown into the mix as well, is another\nmatter again. Here is just one example.\n",
- "id": 294
- }
- ],
- "id": 293
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 295
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nFor a long time MicroSoft was shipping the\nInternet Explorer browser with an ",
- "id": 297
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "older version of Java",
- "id": 299
- }
- ],
- "id": 298
- },
- {
- "type": 3,
- "textContent": "\n(a version 1.1\n",
- "id": 300
- },
- {
- "type": 2,
- "tagName": "abbr",
- "attributes": {
- "title": "Java Virtual Machine, the emulator in which Java Applets run."
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nJVM",
- "id": 302
- }
- ],
- "id": 301
- },
- {
- "type": 3,
- "textContent": ").\nAfter some events happened, MS put\nthe ",
- "id": 303
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "latest Java",
- "id": 305
- }
- ],
- "id": 304
- },
- {
- "type": 3,
- "textContent": " engines into its browsers. Soon\nafter that, they began to supply the IE with ",
- "id": 306
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "no JVM\nat all",
- "id": 308
- }
- ],
- "id": 307
- },
- {
- "type": 3,
- "textContent": ".\n",
- "id": 309
- }
- ],
- "id": 296
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 310
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nGiven the possible complications with Applets,\nit is fortunate that they are so easy to check\nwhen on they are on the internet. A few clicks\nand someone on the other side of the planet\ncan be reading the output from the Java console\nof ",
- "id": 312
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "their own browser",
- "id": 314
- }
- ],
- "id": 313
- },
- {
- "type": 3,
- "textContent": " or, sometimes, see the Applet\nworking perfectly.\n",
- "id": 315
- }
- ],
- "id": 311
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 316
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf the Applet that fails for you works in someone else's browser,\nit helps to quickly narrow the scope of the problem to the html,\nthe applet tag, or the JVM installed in the browser\n(or complete lack of one).\n",
- "id": 318
- }
- ],
- "id": 317
- },
- {
- "type": 3,
- "textContent": "\n\n",
- "id": 319
- },
- {
- "type": 2,
- "tagName": "h2",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "bother",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Why bother?",
- "id": 322
- }
- ],
- "id": 321
- }
- ],
- "id": 320
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 323
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "A very good question. Why go to all this effort?\n",
- "id": 325
- }
- ],
- "id": 324
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 326
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nPerhaps someone can understand the problem\nyou describe from the description you give.\nMaybe it is one of those things that a\nthousand people before have stumbled on.\n",
- "id": 328
- }
- ],
- "id": 327
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 329
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf you have already checked the FAQ,\nGoogled the forum, read the ..flaming\nmanual it is unlikely that an answer\nwill pop up that easily. You ",
- "id": 331
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "have",
- "id": 333
- }
- ],
- "id": 332
- },
- {
- "type": 3,
- "textContent": "\ndone those things, haven't you?\n",
- "id": 334
- }
- ],
- "id": 330
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 335
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf wasting the time and bandwidth of\nthe other members of a public forum, you\nrisk members of the group delivering\nshort sharp rebukes.\n",
- "id": 337
- }
- ],
- "id": 336
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 338
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nThe people who contribute to the groups\ngive a wide range of advice. Sometimes\nthe advice works, sometimes it does not,\nbut either way, the advice is free.\n",
- "id": 340
- }
- ],
- "id": 339
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 341
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nContributors do so for a variety of reasons,\nincluding the nice feeling they get when\nthey can pass on a piece of knowledge relating\nto their chosen field to someone who is learning.\n",
- "id": 343
- }
- ],
- "id": 342
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 344
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nUnfortunately, if someone asks to be\nspoon fed information that is contained\nin a basic tutorial, it is a strong indication\nthat the questioner does not so much want\nto learn as get others to do work they should\nbe doing themselves.\n",
- "id": 346
- }
- ],
- "id": 345
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 347
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nIf there is a piece of code\nand you wish to have it written, finished\nor fixed by others, there are plenty of\navenues to achieve that. For a modest amount of\nmoney, you can get most IT work completed (or done)\nthrough a number of internet based outsourcing\ncompanies.\nThat is what such companies specialize in.",
- "id": 349
- }
- ],
- "id": 348
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 350
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Free forums are for\npeople to learn.",
- "id": 352
- }
- ],
- "id": 351
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 353
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "Having said that:\n",
- "id": 355
- }
- ],
- "id": 354
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 356
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nLet us assume you are indeed genuine\nin your learning, you have a huge, complex system\nwith an occasional, unpredictable bug, and you\n",
- "id": 358
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "have",
- "id": 360
- }
- ],
- "id": 359
- },
- {
- "type": 3,
- "textContent": " searched the FAQ & Group,\nstudied the manual or documentation and not\nproduced an answer.\n",
- "id": 361
- }
- ],
- "id": 357
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 362
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nFeel free to describe the problem to the\ngroup; perhaps it is a basic\nmisunderstanding on your part\nthat can easily be cleared up.\n",
- "id": 364
- }
- ],
- "id": 363
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 365
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "b",
- "attributes": {},
- "childNodes": [
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "compulsory",
- "rel": "nofollow"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "We",
- "id": 369
- }
- ],
- "id": 368
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "id": "every",
- "rel": "nofollow"
- },
- "childNodes": [],
- "id": 370
- },
- {
- "type": 3,
- "textContent": " are not proposing that every single\nproblem needs a SSCCE in order to be\nsolved. We are also not suggesting an\nexample is, or should be, compulsory.",
- "id": 371
- }
- ],
- "id": 367
- }
- ],
- "id": 366
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 372
- },
- {
- "type": 2,
- "tagName": "p",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "It will, however, make people\nmuch ",
- "id": 374
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "more likely to help",
- "id": 376
- }
- ],
- "id": 375
- },
- {
- "type": 3,
- "textContent": ", and will\ntherefore ",
- "id": 377
- },
- {
- "type": 2,
- "tagName": "em",
- "attributes": {},
- "childNodes": [
- {
- "type": 3,
- "textContent": "increase the chance of\nfinding a solution",
- "id": 379
- }
- ],
- "id": 378
- },
- {
- "type": 3,
- "textContent": ".",
- "id": 380
- }
- ],
- "id": 373
- },
- {
- "type": 3,
- "textContent": "\n\n\n",
- "id": 381
- },
- {
- "type": 2,
- "tagName": "div",
- "attributes": {
- "class": "centerFooter"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "\nWeb hosting compliments of\n",
- "id": 383
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "http://evolutionhosting.com/pub/evolution.jsp"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "Evolution Hosting",
- "id": 385
- }
- ],
- "id": 384
- },
- {
- "type": 3,
- "textContent": " and ",
- "id": 386
- },
- {
- "type": 2,
- "tagName": "a",
- "attributes": {
- "href": "https://coderanch.com/"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "CodeRanch",
- "id": 388
- }
- ],
- "id": 387
- },
- {
- "type": 3,
- "textContent": ".",
- "id": 389
- },
- {
- "type": 2,
- "tagName": "br",
- "attributes": {},
- "childNodes": [],
- "id": 390
- },
- {
- "type": 3,
- "textContent": "\n",
- "id": 391
- }
- ],
- "id": 382
- },
- {
- "type": 3,
- "textContent": "\n\n\n\n\n",
- "id": 392
- },
- {
- "type": 2,
- "tagName": "script",
- "attributes": {
- "type": "text/javascript",
- "charset": "utf-8"
- },
- "childNodes": [
- {
- "type": 3,
- "textContent": "SCRIPT_PLACEHOLDER",
- "id": 394
- }
- ],
- "id": 393
- },
- {
- "type": 3,
- "textContent": "\n\n\n\n\n\n",
- "id": 395
- }
- ],
- "id": 27
- }
- ],
- "id": 3
- }
- ],
- "id": 1
- },
- "initialOffset": {
- "left": 0,
- "top": 0
- }
- },
- "timestamp": 1568367268700
- }
- ]
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement