That's the default SMF cake image. If someone has a better image (with no copyright issues), I'd use it.
Happy birthday, OP.
|
|
|
Bitcoin.org: - Cobra has ultimate control over the domain name. I have access to the domain name settings. - Cobra runs the server. - Will Binns holds the BTC.
Bitcointalk.org: - Cobra has ultimate control over the domain name. I have access to the domain name settings. - I run the server. Cobra has no access to the database or server. - The BTC is held by myself and the treasurers. Cobra has no access.
I am not Cobra. What would even be the point of that?
|
|
|
Is this twitter handle official https://twitter.com/bitcointalk?It looks official but why it's inactive since 30 Nov 2017? This can be helpful for announcements or any such unforeseen events. That is the official twitter handle, but I only tend to use it for long-lasting outages that I can't quickly fix. I don't use Twitter otherwise, so you're not going to see any more regular news, etc. from there.
|
|
|
Is *.bitcointalk.org actually used for anything? I don't recall ever using a subdomain on the forum.
ip.bitcointalk.org is the image proxy. - Prior to last year, ip.bitcointalk.org and beta.bitcointalk.org used *.bitcointalk.org, while bitcointalk.org used its own cert. - As of last year (which I'd forgotten about), bitcointalk.org and ip.bitcointalk.org use *.bitcointalk.org, while beta.bitcointalk.org uses its own cert.
|
|
|
Those were the good ole days like when Atlas tried to commit suicide and I sent the police to his home to make sure he's okay.
I also called his local police when he did that, but they basically blew me off. Did you actually convince them to visit him? Surprised nobody pointed out the pointless bit shifting in that equation I did write it that way in part to be more confusing, but it's not pointless; 1<<10 is 2^10. It restricts the result to the 10-bit space of the game-of-life board.
|
|
|
yeah Theymos
that wasn't working out so well this afternoon
The recent downtime was my screw-up, not Cloudflare's fault.
|
|
|
Sorry about the TLS error downtime. What happened was that I used to have separate certs for bitcointalk.org and *.bitcointalk.org, but I forgot that I combined them last time, so when I renewed *.bitcointalk.org, I didn't update the certificate on the bitcointalk.org server. And I have Cloudflare's strict TLS enforcement enabled, so it just killed the connection as soon as it expired.
|
|
|
It's just bitcoind + about 200 lines of code. BitPay and Coinbase are only (maybe) useful if you need a guaranteed USD value right away when someone pays you. If you're willing to accept a little exchange-rate risk, I highly recommend handling payments yourself. Until very recently, I was using the bitcoind accounts pattern (getaccountaddress & getbalance) recommended from about 2011 to 2014. But this has been deprecated for a few years, and it seems to be broken in 0.16. In order to quickly work around the 0.16 bug, I switched to the one-address-per-user anti-pattern (getaddress -> put this address in your database for the user -> getreceivedbyaddress) which you should really not do because it involves address reuse. (But the forum's case of reusing addresses once or twice isn't the end of the world, which is why I'm accepting it for now.) I haven't decided yet how I'll handle payments in the long-term. Bitcoind-accounts were kind of nice in how they handled payments as user balances rather than invoices. It allows for easier, closer integration with your site, I think, and it makes it easier to think about a lot of edge cases. It wouldn't be all that difficult to basically re-implement bitcoind-accounts on my end so as to keep things roughly as they are while avoiding address reuse. On the other hand, I feel like the ecosystem is mainly moving in the direction of invoices rather than balances. Bitcoind's development seems to be focused on that use-case, and LN fits far more naturally into an invoice-based system. For this, I'd be inclined to switch to BTCPay (which will support LN when possible), but that'd require a total rethink and rewrite of my payments code.
So: If you want an invoice-based system similar to PayPal, Coinbase, or BitPay, or if you want to be more future-proof, use BTCPay. If you want to do what the forum does and deal in user balances rather than invoices, it's pretty easy to use bitcoind directly. Something like (pseudocode): # you have a SQL table `addresses` with columns user, time, address # and a table `spends` with columns user, time, amountSpent
def getAddress(username): address = sqlQuery("select address from addresses where user=% order by time desc limit 1", username) if address is null or bitcoindQuery("getreceivedbyaddress % 0", address) is not 0: address = bitcoindQuery("getnewaddress") sqlQuery("insert into addresses values (%, NOW(), %)", username, address) return address
def logUserSpend(username, amount): sqlQuery("insert into spends values (%, NOW(), %)", username, amount)
def getBalance(username, minConfirmations): balance = 0 for address in sqlQuery("select address from addresses where user=%", username): balance += bitcoindQuery("getreceivedbyaddress % %", address, minConfirmations) totalSends = sqlQuery("select sum(amountSpent) from spends where user=%", username) return balance - totalSends # The above is conceptually how you do it, but you may want to # add something to avoid so many calls to bitcoindQuery, which is # a slow operation. As written, this doesn't scale to hundreds of # addresses per user. For example, you may want to store balances # for old addresses and assume that the user will not reuse them, # or poll bitcoind's listsinceblock looking for addresses for # whom you should update the balances in your database.
def exampleBuyItem(phase, user): if phase is entry: print "Please pay to %", getAddress(user) elif phase is registerPayment: sqlQuery("set transaction isolation level serializable") sqlQuery("start transaction") if getBalance(user, 6) >= price: sendUserTheItem() logUserSpend(user, price) else: print "Not enough money" sqlQuery("commit")
|
|
|
In the forum's first couple of years, accounts would sometimes be deleted. Also, in rare cases an ID can be skipped (eg. if a database transaction gets rolled back).
|
|
|
Using a PoW is something that I've thought about as an optional alternative to the captcha, though there's no need for it to actually do any altcoin mining. Captcha-solving services charge about $0.003 per reCaptcha solve currently, so the computation cost to an attacker (not an average user) would have to be comparable to that. Certainly this makes SHA-x PoW impractical, as it would be far cheaper for an attacker using GPUs/ASICs and special code vs an ordinary user solving it via JavaScript on a CPU. Maybe cuckoo would work. Another thing I've thought about is selling transferable blinded bearer certificates which could each be burned to solve 1 captcha. But both of those would require significant development. If someone codes up the necessary libraries and end-user utilities, I would be very keen to use it on the forum, but I'm not going to create them (at least not anytime soon). More realistically, I might sell one-time-use captcha-bypass codes at $3 per 1000 or something like that. This wouldn't be as flexible as blinded bearer certificates, but it might be sufficient. Someone could right now write a userscript which integrates the forum captcha with a captcha-solving site. Some of them allow you to purchase captcha solves, solve captchas in exchange for credits (eg. solve on your computer and then use the credits on a mobile device), or transfer credits between accounts (eg. buy credits from other users). This is still not ideal from a privacy standpoint, of course.
|
|
|
April fools! I was surprised (and laughing) at how many people took this seriously. I thought that this was way more obvious than last year, but I guess not. - Politeness was how many times you used "please", "sir", "pardon", "apprecia*", "may I", "thanks", and "thank you" in past posts. This is poking a bit of fun at the people who are unnecessarily polite like this. - Imagination was how many times you posted an image tag in past posts. - Coins was how many distinct "coins" you mentioned in past posts. A coin was reckoned as any three-letter acronym (so Satoshi got several from things like "FYI" and "CIA"), as well as any word ending in "coin" (like "Bitcoin"). It was distinct coins, so if you posted the word "bitcoin" 100 times, that'd still only count as 1. - fMerit was calculated according to the posted algorithm. That algorithm is, as nullius pointed out, the min of three runs with different seeds of a linear congruential pseudorandom number generator using the glibc constants. - Virtue was the edit distance between your name and "Lauda". - Karma was as described. Part of the joke with Conway's Game of Life is that since the game is turing-complete, figuring out whether a given configuration terminates equals the halting problem, which is undecidable in the general case. (Though it's maybe not actually undecidable with only an 8x10 input board.) The other part of the joke is that it's just so ridiculous to decide rank in this way, but I guess a lot of people didn't pick up on that... I had kind of wanted to actually have a running game-of-life board in JavaScript on everyone's profile, but I didn't have time. (BTW, when are we getting Conway-GoL-Coin? It's Turing-complete! ) Top 20 in Coins| Gleb Gamow | 1867 | | BitcoinNational | 1849 | | gjhiggins | 1675 | | Phinnaeus Gage | 1541 | | philipma1957 | 1444 | | HYPERfuture | 1384 | | Cryddit | 1341 | | Spoetnik | 1247 | | Amph | 1177 | | TotalPanda | 1175 | | Lauda | 1110 | | iCEBREAKER | 1087 | | ocminer | 1066 | | cryptohunter | 1033 | | placebo | 992 | | DeathAndTaxes | 988 | | Wilikon | 978 | | smoothie | 959 | | killerjoegreece | 945 | | Vlad2Vlad | 917 |
Top 20 in Imagination| ChartBuddy | 69193 | | Gleb Gamow | 13372 | | Phinnaeus Gage | 7228 | | philipma1957 | 6410 | | Meuh6879 | 5869 | | erikalui | 5575 | | Wilikon | 5056 | | dogie | 5050 | | Fakhoury | 4708 | | adamstgBit | 4555 | | killerjoegreece | 3921 | | ismart1 | 3823 | | BADecker | 3745 | | Zilara12 | 3705 | | NotLambchop | 3557 | | Joca97 | 3231 | | sabotag3x | 3106 | | cryptonit | 3032 | | cypherdoc | 2715 | | tokeweed | 2697 |
Top 20 in Politeness| DirectDice | 8317 | | philipma1957 | 7304 | | Gleb Gamow | 7095 | | Phinnaeus Gage | 5729 | | lightlord | 5649 | | zazarb | 5273 | | irfan_pak10 | 5117 | | minerjones | 5019 | | smoothie | 4957 | | JackpotRacer | 4257 | | Betcoin.AG | 4016 | | CoolWave | 4010 | | notlist3d | 4009 | | ocminer | 3854 | | URSAY | 3727 | | secondstrade.com | 3699 | | condoras | 3602 | | Muhammed Zakir | 3552 | | qiwoman2 | 3535 | | roslinpl | 3491 |
Gleb/Phinnaeus wins the award for best Bitcointalker overall!
|
|
|
The forum already has a coin. It's called Bitcoin.
|
|
|
Will I gain another one? Politeness, Imagination, and Coins were calculated based on all of your past posts, but they don't update real-time. fMerit, Virtue, and Karma do update roughly every 20 minutes. But only Staff, Donators, or VIPs will find themselves able to adjust their Virtue that quickly.
|
|
|
Sir, please explain to me what is Virtue?
The seven virtues are chastity, temperence, charity, diligence, patience, kindness, and humility. Any true Bitcoiner will fully exemplify all seven virtues, of course.
|
|
|
LOL, when you see Pharmacist having a politeness score of 1195, you know that this new system is April Fool's joke! It actually is a real stat (counting instances of "thanks" etc. in posts). But he has a lot of posts.
|
|
|
This is an april fools joke.While merit improved things a lot, clearly more adjustments were necessary. Therefore, some new rank requirements have been added in addition to the old requirements. The new rank components are: Activity & MeritAs before. PolitenessHow polite you have been in your posts, using language such as "please" and "sir". Politeness is after all the cornerstone of any good community. fMeritAn obvious extension on top of Merit, sMerit, and source merit. It is calculated using this simple formula: min((1103515245*(uid+activity)+12345) % (1<<10),(1103515245*posts+12345) % (1<<10), (1103515245*merit+12345) % (1<<10)) ImaginationBitcoin would not even exist without Satoshi's impressive imagination, so I've decided to take this into account on the forum. Imaginative people are those who have posted many images. VirtueThis is an upright, God-fearing community which will suffer no witchcraft or other heresy. This stat measures your moral virtue. Warning: those with low virtue may be visited by the holy inquisition. CoinsHow many different coins you have invested in. A good Bitcointalker will maintain a reasonable balance between conservative (100% yearly return) and aggressive (7% weekly return) tokens/coins. KarmaThis is how many non-scammer trust ratings you have both sent and received. Due to our strict moderation of the trust system, this is sure to be a highly reliable measure of your reliability vis-à-vis the trust system.
Previously a lot of people were posting questions about the ranking system, so I decided to simplify it. Just put the highest-order 10 bits of each number into a grid in this configuration: Then run Conway's Game of Life on the cells. If the cells never stop moving even after infinite steps, then you advance to the next rank. For example, consider someone with these stats: Merit: 40 Activity: 56 Politeness: 36 fMerit: 56 Imagination: 36 Virtue: 40 Coins: 56 Karma: 40 This gives you a grid like: This never ends, so the person will advance in rank. Rank adjustments happen every week on Tuesday, and you can only go up 1 rank per week. Hopefully this easy-to-understand, graphical ranking system will put to rest many users' questions and concerns once and for all.
|
|
|
The forum sells ad space in the area beneath the first post of every topic page. This income is used primarily to cover hosting costs and to pay moderators for their work (there are many moderators, so each moderator gets only a small amount -- moderators should be seen as volunteers, not employees). Any leftover amount is typically either saved for future expenses or otherwise reinvested into the forum or the ecosystem. Ads are allowed to contain any non-annoying HTML/CSS style. No images, JavaScript, or animation. Ads must appear 3 or fewer lines tall in my browser (Firefox, 900px wide). Ad text may not contain lies, misrepresentation, or inappropriate language. Ads may not link directly to any NSFW page. No ICOs [1], banks, funds, or anything else that a person can be said to "invest" in; I may very rarely make exceptions if you convince me that you are ultra legit, but don't count on it. Ads may be rejected for other reasons, and I may remove ads even after they are accepted. There are 10 total ad slots which are randomly rotated. So one ad slot has a one in ten chance of appearing. Nine of the slots are for sale here. Ads appear only on topic pages with more than one post, and only for people using the default theme. Duration- Your ads are guaranteed to be up for at least 7 days. - I usually try to keep ads up for no more than 8 or 9 days. - Sometimes ads might be up for longer, but hopefully no longer than 12 days. Even if past rounds sometimes lasted for long periods of time, you should not rely on this for your ads. StatsExact historical impression counts per slot: https://bitcointalk.org/adrotate.php?adstatsInfo about the current ad slots: https://bitcointalk.org/adrotate.php?adinfoAd blockingHero/Legendary members, Donators, VIPs, and moderators have the ability to disable ads. I don't expect many people to use this option. These people don't increase the impression stats for your ads. I try to bypass Adblock Plus filters as much as possible, though this is not guaranteed. It is difficult or impossible for ABP filters to block the ad space itself without blocking posts. However, filters can match against the URLs in your links, your CSS classes and style attributes, and the HTML structure of your ads. To prevent matches against URLs: I have some JavaScript which fixes links blocked by ABP. You must tell me if you want this for your ads. When someone with ABP and JavaScript enabled views your ads, your links are changed to a special randomized bitcointalk.org URL which redirects to your site when visited. People without ABP are unaffected, even if they don't have JavaScript enabled. The downsides are: - ABP users will see the redirection link when they hover over the link, even if they disable ABP for the forum. - Getting referral stats might become even more difficult. - Some users might get a warning when redirecting from https to http. To prevent matching on CSS classes/styles: Don't use inline CSS. I can give your ad a CSS class that is randomized on each pageload, but you must request this. To prevent matching against your HTML structure: Use only one <a> and no other tags if possible. If your ads get blocked because of matching done on something inside of your ad, you are responsible for noticing this and giving me new ad HTML. Designing adsMake sure that your ads look good when you download and edit this test page: https://bitcointalk.org/ad_test.htmlAlso read the comments in that file. Images are not allowed no matter how they are created (CSS, SVG, or data URI). Occasionally I will make an exception for small logos and such, but you must get pre-approval from me first. The maximum size of any one ad is 51200 bytes. I will send you more detailed styling rules if you win slots in this auction (or upon request). Auction rulesYou must be at least a Jr Member to bid. If you are not a Jr Member and you really want to bid, you should PM me first. Tell me in the PM what you're going to advertise. You might be required to pay some amount in advance. Everyone else: Please quickly PM newbies who try to bid here to warn them against impersonation scammers. If you have never purchased forum ad space before, and it is not blatantly obvious what you're going to advertise, say what you're going to advertise in your first bid, or tell me in a PM.Post your bids in this thread. Prices must be stated in BTC per slot. You must state the maximum number of slots you want. When the auction ends, the highest bidders will have their slots filled until all nine slots are filled. So if someone bids for 9 slots @ 5 BTC and this is the highest bid, then he'll get all 9 slots. If the two highest bids are 9 slots @ 4 BTC and 1 slot @ 5 BTC, then the first person will get 8 slots and the second person will get 1 slot. The notation "2 @ 5" means 2 slots for 5 BTC each. Not 2 slots for 5 BTC total.- When you post a bid, the bids in your previous posts are considered to be automatically canceled. You can put multiple bids in one post, however. - All bid prices must be evenly divisible by 0.02. - The bidding starts at 0.02. - I will end the auction at an arbitrary time. Unless I say otherwise, I typically try to end auctions within a few days of 10 days from the time of this post, but unexpected circumstances may sometimes force me to end the auction anytime between 4 and 22 days from the start. I have a small bias toward ending auctions on Fridays, Sundays, and Mondays. - If two people bid at the same price, the person who bid first will have his slots filled first. - Bids are considered invalid and will be ignored if they do not specify both a price and a max quantity, or if they could not possibly win any slots If these rules are confusing, look at some of the past forum ad auctions to see how it's done. I reserve the right to reject bids, even days after the bid is made. You must pay for your slots within 24 hours of receiving the payment address. Otherwise your slots may be sold to someone else, and I might even give you a negative trust rating. I will send you the payment information via forum PM from this account ("theymos", user ID 35) after announcing the auction results in this thread. You might receive false payment information from scammers pretending to be me. They might even have somewhat similar usernames. Be careful. [1]: For the purposes of forum ads, an ICO is any token, altcoin, or other altcoin-like thing which meets any of the following criteria: it is primarily run/backed by a company; it is substantially, fundamentally centralized in either operation or coin distribution; or it is not yet possible for two unprivileged users of the system to send coins directly to each other in a P2P way. The intention here is to allow community efforts to advertise things like Litecoin, but not to allow ICO funding, even when the ICO is disguised in various ways.
|
|
|
1 @ 0.22
Sorry, no ICOs. Auction ended, final result: Slots BTC/Slot Person 1 0.22 8Bet 4 0.22 FortuneJack 1 0.22 Thule 2 0.22 phun.io 1 0.20 ChipMixer
|
|
|
I'm surprised that some veteran members don't know that the forum was founded by Satoshi.
Maybe he wouldn't want to post here nowadays, since the signal-to-noise ratio is too low. But he also wouldn't have liked posting on a forum with oppressive moderation, which would be necessary to make the forum something like how it was in the early days. I think that Satoshi just wouldn't have liked using any large forum.
Whether Satoshi would agree with current forum policies is another matter. You can agree that a policy is correct without necessarily liking the end result. The existing forum policies are pretty natural extensions of the policies under the administration of Satoshi and Sirius, intended to maximize freedom while still keeping the forum usable. Though if he disagreed, he'd probably say that there is too much freedom and not enough usability.
And while it may be interesting to speculate, Satoshi's approval is not required. You should do what is correct, as far as you can tell, not what you think some person (who is really just an abstract idea to most people rather than a real person) would want you to do.
|
|
|
The selfMod bit will now be permanently cleared when a non-mod moves a topic into a section which doesn't allow selfMod.
|
|
|
|