• Sky



    Viewing 15 replies - 16 through 30 (of 164 total)
    • Google indexes around 50 billion web pages.
      Facebook has 17 billion posts and 10 billion messages every day.
      There are 350 billion emails sent every day.
      Wikipedia has over a billion edits.
      YouTube has around a billion videos.
      Just some examples.

      Do you really think that it’s practical to have a lawyer decide that each one of these web pages/posts/emails/etc. complies with every US law before it is published?

      Do you really want to wait for a lawyer to review your email or transferred files before you can access them or send them?

      And if you extend it to them being liable for data stored, as you have said, that would mean that the services would be liable as soon as something was uploaded to them, meaning that all of the above would be impossible to exist, as would any form of data uploading, since all it would take is one bad actor to upload an illegal message or file for the service to be at fault before the lawyer had even had a chance to review it.

      1 user thanked author for this post.
    • Don’t worry, Susan – without Section 230 search engines would theoretically be as good as illegal too, so no one would be able to find AskWoody to post on it!

      We’d all just have to go to Wikipedia to find our answers… Oh wait…

    • Personally, I’m not keen on the idea of everything from social media to forums to webmail to the cloud becoming as good as illegal overnight. Well, the social media part would be okay…

    • in reply to: Starlink Global Roaming Service $200/month #2536319

      Say goodbye to a dark night sky.

      …the sky may brighten by a factor of two to three due to diffuse reflection of sunlight off the spacecraft…


    • in reply to: Microsoft kills off Internet Explorer — mostly #2536033

      If you don’t want to update to Ventura 13.2.1 yet, you can update your Safari browser to 16.3.1.

      Just a heads up: although the latest Safari version is listed as 16.3.1 on some MacOS versions, Apple didn’t change the version number for all MacOS versions and it still appears as 16.3 on some. Check your Safari build number:

      “After installing this update, the build number for Safari 16.3 is 16614. on macOS Big Sur and 17614. on macOS Monterey.”


    • I won’t attempt the VBA, but, since you already know how to get iNumCnt, all you need to do is have an outer loop iterating from 0 to 9 inclusive, an inner loop iterating from 0 to iNumCnt(iCntr) exclusive, and within each inner loop add iCntr to the end of the return string.

      In Python:

      string = "";
      for iCntr in range(0, 10):
          for x in range(0, iNumCnt[iCntr]):
              string = string + str(iCntr)

      Just make sure to keep an eye on the inclusive/exclusive nature of the limits of the loops, as in Python they are exclusive and in VBA, from RetiredGeek’s code, they look to be inclusive.

    • As much as I enjoy the functional nature of recursion, a much simpler solution for the wraparound occurred to me this morning, which only modifies your original code very slightly, RetiredGeek. Hopefully I’ve made the very minor changes correctly. I’ve just replaced “iCntr = 0 To 9” with “iCntr = 0 To 12” and “iNumCnt(iCntr)” with “iNumCnt(iCntr Mod 10)”:

      For iCntr = 0 To 12
         If (iNumCnt(iCntr Mod 10) > 0) Then
           iSeq = iSeq + 1
           iSeq = 0
         End If
         If (iSeq > 3) Then Exit For
      Next iCntr

      Rather tidy, don’t you think, RetiredGeek? If you’re anything like me you’ll appreciate how simple the solution is.

    • Just a note on your correction: you’ve got “For iCntr = 0 To 9” twice.

      I’ll be honest, VBA isn’t a programming language I know, so I can’t write what I mean about the recursion thing in the language, but here’s what I mean in Python, as that’s a fairly widely known language which seems to look similar. This replaces the “For iCntr = 0 To 9” loop:

      def recursionFunction(iNumCnt, iCntr, iSeq, wraparound):
          if iNumCnt[iCntr] > 0:
              iSeq = iSeq + 1
              iSeq = 0
          if iSeq < 4:
              if iCntr == 9:
                  if iSeq > 0:
                      iSeq = recursionFunction(iNumCnt, 0, iSeq, True)
              elif wraparound == False or (wraparound == True and iSeq > 0):
                  iSeq = recursionFunction(iNumCnt, iCntr + 1, iSeq, wraparound)
          return iSeq
      iSeq = recursionFunction(iNumCnt, 0, 0, False)

      Perhaps you can convert this to VBA. Since we’re using some recursion, I’ve changed it to be fully recursive – I hope that you don’t mind.

      1 user thanked author for this post.
    • Wouldn’t the “If (iNumCnt(iCntr) > 0)” conditional have incorrect behaviour if the cell doesn’t contain a 9 (or if it doesn’t contain any particular number after a sequence has already been found)? The cell could contain a > 3 sequence but iSeq would be reset to 0 upon finding no 9. I think that you need to break out the loop when iSeq > 3 to fix this (you could combine the last conditional in the function with this if you wanted to be efficient).

      As for accounting for wraparounds, a conditional that checks if iSeq > 0 when iCntr = 9 could do this, perhaps with recursion.

      1 user thanked author for this post.
    • in reply to: Preserving downloaded software to CDs #2528813

      Similar to TechTango, I backup my software to multiple locations.

      I posted my backup strategy the other day, so I’ll just link to it rather than posting it again.

      1 user thanked author for this post.
    • in reply to: US Supreme Court takes on the Internet #2525640

      Exactly this.

      People and companies are allowed to set rules for what goes on in spaces that they own in real life, so why should the same not apply to internet spaces owned by people and companies? It’s not censorship if you ask someone to leave your house because they are abusing other guests, for example, because that’s a violation of socially agreed-upon rules.

      As for viewpoints, not every form of speech is a viewpoint. Hate speech, for example, is not a viewpoint. Inciting an insurrection, the reason Trump was banned from Twitter, is not a viewpoint. These are violations of rules that users agreed to when they signed up for the site in question.

      1 user thanked author for this post.
    • In the sense that it is will produce the same output, String.format() is as capable as StringBuilder/StringBuffer, but StringBuilder/StringBuffer are much more efficient than String.format(), probably because String.format() is having to parse your string.

      So, if you have to choose just between the two then I would say that the general rule I would use is to use StringBuilder/StringBuffer where performance is more important, and String.format() where neatness of code is more important.

      However, I think the better solution would be to use the string concatenation operator (IE. string1 + string2), which is literally just shorthand for StringBuilder/StringBuffer (and is thus just as fast), and, in my personal opinion, looks just as neat as String.format().

      1 user thanked author for this post.
    • in reply to: Saving history #2524065

      I probably go a bit overboard with digital preservation, but I do want to expand on what the article said about hardware and apply that to the external drives that we store our digital media on, whether that be converted media or media that has always been digital.

      Mr. Fastie said “In other words, expect the media to outlast the hardware.”, and that is very much true. If you have precious media, don’t just store it on one drive, make sure you have at least two copies of it. Drives can and do fail and even if they don’t outright fail, data degradation (bit rot) is a real thing, as is ransomware.

      I personally store copies of everything precious to me on three drives, as well as in the cloud. I know that that is probably going overboard, but external drives are so cheap and the data so important to me that I don’t see why not.

      I also periodically use a piece of software called Hashdeep to check for any data degradation. Unfortunately, the software is no longer being updated, but it does still work on Windows 10 (I’ve not tried it on Windows 11). Hashdeep is a piece of software that can create and audit checksums of every file in a directory you specify. It’s simple, but it does the job of telling you when a file has been corrupted so you can replace the corrupted file with an uncorrupted copy.

      3 users thanked author for this post.
    • in reply to: Well my Computers Stink! #2523568

      The reason that benchmarks target gaming FPS is that that is the main and one of the only places where you will see an impact of better GPUs. Even integrated graphics are enough for things like web browsing and document handling, as they are mainly CPU-bound processes. If you have a high resolution screen then videos will appreciate a better GPU, especially with modern hardware acceleration, as will things like video and image processing, but those things don’t apply to most of us.

      In conclusion: If you want faster web browsing and document handling, upgrading your CPU (or RAM/lack of SSD, if those are your bottleneck), is what will most likely do it for you.

      EDIT: This will teach me not to leave a tab open for half an hour without checking for new messages before posting!

      1 user thanked author for this post.
    • in reply to: Does Linux Mint require antivirus? #2523564

      I certainly agree that servers are easier to launch attacks at than desktop machines, but that doesn’t mean that a desktop user can’t come across a piece of malware, in all of the same ways that a Windows desktop user could, and given that desktop Linux and server Linux share most of the same codebase, one would expect that most vulnerabilities are going to get exploited both on servers and desktops.

      Is it likely that you download malware that targets desktop Linux? If you’re a smart user then probably not, but it’s not about being smart, it’s about the fact that you’re mitigating a low risk high cost scenario with a low opportunity cost activity (running an antivirus), so from a risk management perspective I still think that it makes sense to install one.

      1 user thanked author for this post.
    Viewing 15 replies - 16 through 30 (of 164 total)